001/* This file was generated by SableCC (http://www.sablecc.org/). */
002
003package org.anarres.graphviz.parser.analysis;
004
005import java.util.*;
006import org.anarres.graphviz.parser.node.*;
007
008public class DepthFirstAdapter extends AnalysisAdapter
009{
010    public void inStart(Start node)
011    {
012        defaultIn(node);
013    }
014
015    public void outStart(Start node)
016    {
017        defaultOut(node);
018    }
019
020    public void defaultIn(@SuppressWarnings("unused") Node node)
021    {
022        // Do nothing
023    }
024
025    public void defaultOut(@SuppressWarnings("unused") Node node)
026    {
027        // Do nothing
028    }
029
030    @Override
031    public void caseStart(Start node)
032    {
033        inStart(node);
034        node.getPGraph().apply(this);
035        node.getEOF().apply(this);
036        outStart(node);
037    }
038
039    public void inAGraph(AGraph node)
040    {
041        defaultIn(node);
042    }
043
044    public void outAGraph(AGraph node)
045    {
046        defaultOut(node);
047    }
048
049    @Override
050    public void caseAGraph(AGraph node)
051    {
052        inAGraph(node);
053        if(node.getGraphType() != null)
054        {
055            node.getGraphType().apply(this);
056        }
057        if(node.getName() != null)
058        {
059            node.getName().apply(this);
060        }
061        {
062            List<PStatement> copy = new ArrayList<PStatement>(node.getStatement());
063            for(PStatement e : copy)
064            {
065                e.apply(this);
066            }
067        }
068        outAGraph(node);
069    }
070
071    public void inAGraphGraphType(AGraphGraphType node)
072    {
073        defaultIn(node);
074    }
075
076    public void outAGraphGraphType(AGraphGraphType node)
077    {
078        defaultOut(node);
079    }
080
081    @Override
082    public void caseAGraphGraphType(AGraphGraphType node)
083    {
084        inAGraphGraphType(node);
085        if(node.getKwGraph() != null)
086        {
087            node.getKwGraph().apply(this);
088        }
089        outAGraphGraphType(node);
090    }
091
092    public void inADigraphGraphType(ADigraphGraphType node)
093    {
094        defaultIn(node);
095    }
096
097    public void outADigraphGraphType(ADigraphGraphType node)
098    {
099        defaultOut(node);
100    }
101
102    @Override
103    public void caseADigraphGraphType(ADigraphGraphType node)
104    {
105        inADigraphGraphType(node);
106        if(node.getKwDigraph() != null)
107        {
108            node.getKwDigraph().apply(this);
109        }
110        outADigraphGraphType(node);
111    }
112
113    public void inAGlobalDefaultsStatement(AGlobalDefaultsStatement node)
114    {
115        defaultIn(node);
116    }
117
118    public void outAGlobalDefaultsStatement(AGlobalDefaultsStatement node)
119    {
120        defaultOut(node);
121    }
122
123    @Override
124    public void caseAGlobalDefaultsStatement(AGlobalDefaultsStatement node)
125    {
126        inAGlobalDefaultsStatement(node);
127        outAGlobalDefaultsStatement(node);
128    }
129
130    public void inAGraphDefaultsStatement(AGraphDefaultsStatement node)
131    {
132        defaultIn(node);
133    }
134
135    public void outAGraphDefaultsStatement(AGraphDefaultsStatement node)
136    {
137        defaultOut(node);
138    }
139
140    @Override
141    public void caseAGraphDefaultsStatement(AGraphDefaultsStatement node)
142    {
143        inAGraphDefaultsStatement(node);
144        outAGraphDefaultsStatement(node);
145    }
146
147    public void inANodeDefaultsStatement(ANodeDefaultsStatement node)
148    {
149        defaultIn(node);
150    }
151
152    public void outANodeDefaultsStatement(ANodeDefaultsStatement node)
153    {
154        defaultOut(node);
155    }
156
157    @Override
158    public void caseANodeDefaultsStatement(ANodeDefaultsStatement node)
159    {
160        inANodeDefaultsStatement(node);
161        outANodeDefaultsStatement(node);
162    }
163
164    public void inAEdgeDefaultsStatement(AEdgeDefaultsStatement node)
165    {
166        defaultIn(node);
167    }
168
169    public void outAEdgeDefaultsStatement(AEdgeDefaultsStatement node)
170    {
171        defaultOut(node);
172    }
173
174    @Override
175    public void caseAEdgeDefaultsStatement(AEdgeDefaultsStatement node)
176    {
177        inAEdgeDefaultsStatement(node);
178        outAEdgeDefaultsStatement(node);
179    }
180
181    public void inADataStatement(ADataStatement node)
182    {
183        defaultIn(node);
184    }
185
186    public void outADataStatement(ADataStatement node)
187    {
188        defaultOut(node);
189    }
190
191    @Override
192    public void caseADataStatement(ADataStatement node)
193    {
194        inADataStatement(node);
195        outADataStatement(node);
196    }
197
198    public void inAComposite(AComposite node)
199    {
200        defaultIn(node);
201    }
202
203    public void outAComposite(AComposite node)
204    {
205        defaultOut(node);
206    }
207
208    @Override
209    public void caseAComposite(AComposite node)
210    {
211        inAComposite(node);
212        {
213            List<PNode> copy = new ArrayList<PNode>(node.getNode());
214            for(PNode e : copy)
215            {
216                e.apply(this);
217            }
218        }
219        {
220            List<PAttribute> copy = new ArrayList<PAttribute>(node.getAttribute());
221            for(PAttribute e : copy)
222            {
223                e.apply(this);
224            }
225        }
226        outAComposite(node);
227    }
228
229    public void inASimpleNode(ASimpleNode node)
230    {
231        defaultIn(node);
232    }
233
234    public void outASimpleNode(ASimpleNode node)
235    {
236        defaultOut(node);
237    }
238
239    @Override
240    public void caseASimpleNode(ASimpleNode node)
241    {
242        inASimpleNode(node);
243        if(node.getName() != null)
244        {
245            node.getName().apply(this);
246        }
247        outASimpleNode(node);
248    }
249
250    public void inAPortNode(APortNode node)
251    {
252        defaultIn(node);
253    }
254
255    public void outAPortNode(APortNode node)
256    {
257        defaultOut(node);
258    }
259
260    @Override
261    public void caseAPortNode(APortNode node)
262    {
263        inAPortNode(node);
264        if(node.getName() != null)
265        {
266            node.getName().apply(this);
267        }
268        if(node.getPort() != null)
269        {
270            node.getPort().apply(this);
271        }
272        outAPortNode(node);
273    }
274
275    public void inASubgraphNode(ASubgraphNode node)
276    {
277        defaultIn(node);
278    }
279
280    public void outASubgraphNode(ASubgraphNode node)
281    {
282        defaultOut(node);
283    }
284
285    @Override
286    public void caseASubgraphNode(ASubgraphNode node)
287    {
288        inASubgraphNode(node);
289        if(node.getName() != null)
290        {
291            node.getName().apply(this);
292        }
293        {
294            List<PStatement> copy = new ArrayList<PStatement>(node.getStatement());
295            for(PStatement e : copy)
296            {
297                e.apply(this);
298            }
299        }
300        outASubgraphNode(node);
301    }
302
303    public void inAArrowEdge(AArrowEdge node)
304    {
305        defaultIn(node);
306    }
307
308    public void outAArrowEdge(AArrowEdge node)
309    {
310        defaultOut(node);
311    }
312
313    @Override
314    public void caseAArrowEdge(AArrowEdge node)
315    {
316        inAArrowEdge(node);
317        if(node.getTokArrow() != null)
318        {
319            node.getTokArrow().apply(this);
320        }
321        outAArrowEdge(node);
322    }
323
324    public void inALinkEdge(ALinkEdge node)
325    {
326        defaultIn(node);
327    }
328
329    public void outALinkEdge(ALinkEdge node)
330    {
331        defaultOut(node);
332    }
333
334    @Override
335    public void caseALinkEdge(ALinkEdge node)
336    {
337        inALinkEdge(node);
338        if(node.getTokLink() != null)
339        {
340            node.getTokLink().apply(this);
341        }
342        outALinkEdge(node);
343    }
344
345    public void inAAttribute(AAttribute node)
346    {
347        defaultIn(node);
348    }
349
350    public void outAAttribute(AAttribute node)
351    {
352        defaultOut(node);
353    }
354
355    @Override
356    public void caseAAttribute(AAttribute node)
357    {
358        inAAttribute(node);
359        if(node.getKey() != null)
360        {
361            node.getKey().apply(this);
362        }
363        if(node.getValue() != null)
364        {
365            node.getValue().apply(this);
366        }
367        outAAttribute(node);
368    }
369
370    public void inALiteralAtom(ALiteralAtom node)
371    {
372        defaultIn(node);
373    }
374
375    public void outALiteralAtom(ALiteralAtom node)
376    {
377        defaultOut(node);
378    }
379
380    @Override
381    public void caseALiteralAtom(ALiteralAtom node)
382    {
383        inALiteralAtom(node);
384        if(node.getLiteral() != null)
385        {
386            node.getLiteral().apply(this);
387        }
388        outALiteralAtom(node);
389    }
390
391    public void inAQuotedAtom(AQuotedAtom node)
392    {
393        defaultIn(node);
394    }
395
396    public void outAQuotedAtom(AQuotedAtom node)
397    {
398        defaultOut(node);
399    }
400
401    @Override
402    public void caseAQuotedAtom(AQuotedAtom node)
403    {
404        inAQuotedAtom(node);
405        if(node.getStringLiteral() != null)
406        {
407            node.getStringLiteral().apply(this);
408        }
409        outAQuotedAtom(node);
410    }
411}