Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(698)

Side by Side Diff: sdk/lib/_internal/compiler/implementation/elements/visitor.dart

Issue 96873002: Fix ElementVisitor (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « sdk/lib/_internal/compiler/implementation/elements/modelx.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library visitor; 5 library visitor;
6 6
7 import 'elements.dart'; 7 import 'elements.dart';
8 import 'modelx.dart';
9 import '../scanner/scannerlib.dart' 8 import '../scanner/scannerlib.dart'
10 show PartialClassElement; 9 show PartialClassElement;
11 import '../ssa/ssa.dart' 10 import '../ssa/ssa.dart'
12 show InterceptedElement; 11 show InterceptedElement;
13 import '../closure.dart' 12 import '../closure.dart'
14 show ThisElement, 13 show ThisElement,
15 CheckVariableElement, 14 CheckVariableElement,
16 BoxElement, 15 BoxElement,
17 BoxFieldElement, 16 BoxFieldElement,
18 ClosureClassElement, 17 ClosureClassElement,
19 ClosureFieldElement; 18 ClosureFieldElement;
20 19
21 abstract class ElementVisitor<R> { 20 abstract class ElementVisitor<R> {
22 R visit(Element e) => e.accept(this); 21 R visit(Element e) => e.accept(this);
23 22
24 R visitElement(Element e); 23 R visitElement(Element e);
25 R visitElementX(ElementX e) => visitElement(e);
26 R visitErroneousElement(ErroneousElement e) => visitFunctionElement(e); 24 R visitErroneousElement(ErroneousElement e) => visitFunctionElement(e);
27 R visitWarnOnUseElement(WarnOnUseElement e) => visitElement(e); 25 R visitWarnOnUseElement(WarnOnUseElement e) => visitElement(e);
28 R visitAmbiguousElement(AmbiguousElement e) => visitElement(e); 26 R visitAmbiguousElement(AmbiguousElement e) => visitElement(e);
29 R visitScopeContainerElement(ScopeContainerElement e) => visitElement(e); 27 R visitScopeContainerElement(ScopeContainerElement e) => visitElement(e);
30 R visitCompilationUnitElement(CompilationUnitElement e) => visitElement(e); 28 R visitCompilationUnitElement(CompilationUnitElement e) => visitElement(e);
31 R visitLibraryElement(LibraryElement e) => visitScopeContainerElement(e); 29 R visitLibraryElement(LibraryElement e) => visitScopeContainerElement(e);
32 R visitPrefixElement(PrefixElement e) => visitElement(e); 30 R visitPrefixElement(PrefixElement e) => visitElement(e);
33 R visitTypedefElement(TypedefElement e) => visitElement(e); 31 R visitTypedefElement(TypedefElement e) => visitElement(e);
34 R visitVariableElement(VariableElement e) => visitElement(e); 32 R visitVariableElement(VariableElement e) => visitElement(e);
35 R visitFieldParameterElement(FieldParameterElement e) => visitElement(e); 33 R visitFieldParameterElement(FieldParameterElement e) => visitElement(e);
36 R visitVariableListElement(VariableListElement e) => visitElement(e); 34 R visitVariableListElement(VariableListElement e) => visitElement(e);
37 R visitAbstractFieldElement(AbstractFieldElement e) => visitElement(e); 35 R visitAbstractFieldElement(AbstractFieldElement e) => visitElement(e);
38 R visitFunctionElement(FunctionElement e) => visitElement(e); 36 R visitFunctionElement(FunctionElement e) => visitElement(e);
39 R visitConstructorBodyElement(ConstructorBodyElement e) => visitElement(e); 37 R visitConstructorBodyElement(ConstructorBodyElement e) => visitElement(e);
40 R visitClassElement(ClassElement e) => visitScopeContainerElement(e); 38 R visitClassElement(ClassElement e) => visitScopeContainerElement(e);
41 R visitTypeDeclarationElement(TypeDeclarationElement e) => visitElement(e); 39 R visitTypeDeclarationElement(TypeDeclarationElement e) => visitElement(e);
42 R visitBaseClassElementX(BaseClassElementX e) => visitClassElement(e);
43 R visitClassElementX(ClassElementX e) => visitBaseClassElementX(e);
44 R visitMixinApplicationElement(MixinApplicationElement e) { 40 R visitMixinApplicationElement(MixinApplicationElement e) {
45 visitClassElement(e); 41 visitClassElement(e);
46 } 42 }
43 R visitVoidElement(VoidElement e) => visitElement(e);
47 R visitLabelElement(LabelElement e) => visitElement(e); 44 R visitLabelElement(LabelElement e) => visitElement(e);
48 R visitTargetElement(TargetElement e) => visitElement(e); 45 R visitTargetElement(TargetElement e) => visitElement(e);
49 R visitTypeVariableElement(TypeVariableElement e) => visitElement(e); 46 R visitTypeVariableElement(TypeVariableElement e) => visitElement(e);
50 R visitErroneousElementX(ErroneousElementX e) => visitErroneousElement(e); 47 R visitPartialClassElement(PartialClassElement e) {
kasperl 2013/11/29 12:37:57 Not sure you want to see the partial class element
51 R visitWarnOnUseElementX(WarnOnUseElementX e) => visitWarnOnUseElement(e); 48 return visitClassElement(e);
52 R visitAmbiguousElementX(AmbiguousElementX e) => visitAmbiguousElement(e);
53 R visitLibraryElementX(LibraryElementX e) => visitLibraryElement(e);
54 R visitPrefixElementX(PrefixElementX e) => visitPrefixElement(e);
55 R visitTypedefElementX(TypedefElementX e) => visitTypedefElement(e);
56 R visitVariableElementX(VariableElementX e) => visitVariableElement(e);
57 R visitFieldParameterElementX(FieldParameterElementX e) {
58 return visitFieldParameterElement(e);
59 } 49 }
60 R visitVariableListElementX(VariableListElementX e) { 50 R visitInterceptedElement(InterceptedElement e) => visitElement(e);
61 return visitVariableListElement(e); 51 R visitThisElement(ThisElement e) => visitElement(e);
62 } 52 R visitCheckVariableElement(CheckVariableElement e ) => visitElement(e);
63 R visitAbstractFieldElementX(AbstractFieldElementX e) { 53 R visitBoxElement(BoxElement e) => visitElement(e);
64 return visitAbstractFieldElement(e); 54 R visitBoxFieldElement(BoxFieldElement e) => visitElement(e);
65 } 55 R visitClosureClassElement(ClosureClassElement e) => visitClassElement(e);
66 R visitFunctionElementX(FunctionElementX e) => visitFunctionElement(e);
67 R visitConstructorBodyElementX(ConstructorBodyElementX e) {
68 return visitFunctionElementX(e);
69 }
70 R visitSynthesizedConstructorElementX(SynthesizedConstructorElementX e) {
71 return visitFunctionElementX(e);
72 }
73 R visitVoidElementX(VoidElementX e) => visitElementX(e);
74 R visitLabelElementX(LabelElementX e) => visitLabelElement(e);
75 R visitTargetElementX(TargetElementX e) => visitTargetElement(e);
76 R visitTypeVariableElementX(TypeVariableElementX e) {
77 visitTypeVariableElement(e);
78 }
79 R visitPartialClassElement(PartialClassElement e) {
80 return visitClassElementX(e);
81 }
82 R visitInterceptedElement(InterceptedElement e) => visitElementX(e);
83 R visitThisElement(ThisElement e) => visitElementX(e);
84 R visitCheckVariableElement(CheckVariableElement e ) => visitElementX(e);
85 R visitBoxElement(BoxElement e) => visitElementX(e);
86 R visitBoxFieldElement(BoxFieldElement e) => visitElementX(e);
87 R visitClosureClassElement(ClosureClassElement e) => visitClassElementX(e);
88 R visitClosureFieldElement(ClosureFieldElement e) => visitVariableElement(e); 56 R visitClosureFieldElement(ClosureFieldElement e) => visitVariableElement(e);
89 } 57 }
OLDNEW
« no previous file with comments | « sdk/lib/_internal/compiler/implementation/elements/modelx.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698