OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 dart2js.semantics_visitor; | 5 library dart2js.semantics_visitor; |
6 | 6 |
7 import '../constants/expressions.dart'; | 7 import '../constants/expressions.dart'; |
8 import '../dart2jslib.dart' show invariant, MessageKind; | 8 import '../dart2jslib.dart' show invariant, MessageKind; |
9 import '../dart_types.dart'; | 9 import '../dart_types.dart'; |
10 import '../elements/elements.dart'; | 10 import '../elements/elements.dart'; |
(...skipping 4037 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4048 /// } | 4048 /// } |
4049 /// m() => C(true, 42); | 4049 /// m() => C(true, 42); |
4050 /// | 4050 /// |
4051 R visitConstructorIncompatibleInvoke( | 4051 R visitConstructorIncompatibleInvoke( |
4052 NewExpression node, | 4052 NewExpression node, |
4053 ConstructorElement constructor, | 4053 ConstructorElement constructor, |
4054 InterfaceType type, | 4054 InterfaceType type, |
4055 NodeList arguments, | 4055 NodeList arguments, |
4056 CallStructure callStructure, | 4056 CallStructure callStructure, |
4057 A arg); | 4057 A arg); |
| 4058 |
| 4059 /// Access of library through a deferred [prefix]. |
| 4060 /// |
| 4061 /// For instance |
| 4062 /// import 'lib.dart' deferred as prefix; |
| 4063 /// |
| 4064 /// m() => prefix.foo; |
| 4065 /// |
| 4066 /// This visit method is special in that it is called as a pre-step to calling |
| 4067 /// the visit method for the actual access. Therefore this method cannot |
| 4068 /// return a result to its caller. |
| 4069 void previsitDeferredAccess( |
| 4070 Send node, |
| 4071 PrefixElement prefix, |
| 4072 A arg); |
4058 } | 4073 } |
4059 | 4074 |
4060 abstract class SemanticDeclarationVisitor<R, A> { | 4075 abstract class SemanticDeclarationVisitor<R, A> { |
4061 R apply(Node node, A arg); | 4076 R apply(Node node, A arg); |
4062 | 4077 |
4063 /// Apply this visitor to the [parameters]. | 4078 /// Apply this visitor to the [parameters]. |
4064 applyParameters(NodeList parameters, A arg); | 4079 applyParameters(NodeList parameters, A arg); |
4065 | 4080 |
4066 /// Apply this visitor to the initializers of [constructor]. | 4081 /// Apply this visitor to the initializers of [constructor]. |
4067 applyInitializers(FunctionExpression constructor, A arg); | 4082 applyInitializers(FunctionExpression constructor, A arg); |
(...skipping 551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4619 /// C() : this._(42); | 4634 /// C() : this._(42); |
4620 /// } | 4635 /// } |
4621 /// | 4636 /// |
4622 R errorUnresolvedThisConstructorInvoke( | 4637 R errorUnresolvedThisConstructorInvoke( |
4623 Send node, | 4638 Send node, |
4624 Element element, | 4639 Element element, |
4625 NodeList arguments, | 4640 NodeList arguments, |
4626 Selector selector, | 4641 Selector selector, |
4627 A arg); | 4642 A arg); |
4628 } | 4643 } |
OLD | NEW |