Index: third_party/pkg/angular/lib/core/parser/parser.dart |
diff --git a/third_party/pkg/angular/lib/core/parser/parser.dart b/third_party/pkg/angular/lib/core/parser/parser.dart |
index 0e8af1a811d045adf957312da0f0b5c52faa54ab..729b20af15fb4863f7b9665289a97a1587de494d 100644 |
--- a/third_party/pkg/angular/lib/core/parser/parser.dart |
+++ b/third_party/pkg/angular/lib/core/parser/parser.dart |
@@ -1,17 +1,18 @@ |
library angular.core.parser; |
+import 'package:angular/core/parser/syntax.dart' |
+ show CallArguments; |
export 'package:angular/core/parser/syntax.dart' |
- show Visitor, Expression, BoundExpression; |
+ show Visitor, Expression, BoundExpression, CallArguments; |
export 'package:angular/core/parser/dynamic_parser.dart' |
show DynamicParser, DynamicParserBackend, ClosureMap; |
-export 'package:angular/core/parser/static_parser.dart' |
- show StaticParser, StaticParserFunctions; |
typedef LocalsWrapper(context, locals); |
typedef Getter(self); |
typedef Setter(self, value); |
typedef BoundGetter([locals]); |
typedef BoundSetter(value, [locals]); |
+typedef MethodClosure(obj, List posArgs, Map namedArgs); |
/// Placeholder for DI. The parser you are looking for is [DynamicParser]. |
abstract class Parser<T> { |
@@ -21,84 +22,48 @@ abstract class Parser<T> { |
abstract class ParserBackend<T> { |
bool isAssignable(T expression); |
- T newChain(List expressions) |
- => null; |
- T newFilter(T expression, String name, List arguments) |
- => null; |
+ T newChain(List expressions) => null; |
+ T newFilter(T expression, String name, List arguments) => null; |
- T newAssign(T target, T value) |
- => null; |
- T newConditional(T condition, T yes, T no) |
- => null; |
+ T newAssign(T target, T value) => null; |
+ T newConditional(T condition, T yes, T no) => null; |
- T newAccessScope(String name) |
- => null; |
- T newAccessMember(T object, String name) |
- => null; |
- T newAccessKeyed(T object, T key) |
- => null; |
+ T newAccessScope(String name) => null; |
+ T newAccessMember(T object, String name) => null; |
+ T newAccessKeyed(T object, T key) => null; |
- T newCallScope(String name, List arguments) |
- => null; |
- T newCallFunction(T function, List arguments) |
- => null; |
- T newCallMember(T object, String name, List arguments) |
- => null; |
+ T newCallScope(String name, CallArguments arguments) => null; |
+ T newCallFunction(T function, CallArguments arguments) => null; |
+ T newCallMember(T object, String name, CallArguments arguments) => null; |
- T newPrefix(String operation, T expression) |
- => null; |
- T newPrefixPlus(T expression) |
- => expression; |
- T newPrefixMinus(T expression) |
- => newBinaryMinus(newLiteralZero(), expression); |
- T newPrefixNot(T expression) |
- => newPrefix('!', expression); |
+ T newPrefix(String operation, T expression) => null; |
+ T newPrefixPlus(T expression) => expression; |
+ T newPrefixMinus(T expression) => |
+ newBinaryMinus(newLiteralZero(), expression); |
+ T newPrefixNot(T expression) => newPrefix('!', expression); |
- T newBinary(String operation, T left, T right) |
- => null; |
- T newBinaryPlus(T left, T right) |
- => newBinary('+', left, right); |
- T newBinaryMinus(T left, T right) |
- => newBinary('-', left, right); |
- T newBinaryMultiply(T left, T right) |
- => newBinary('*', left, right); |
- T newBinaryDivide(T left, T right) |
- => newBinary('/', left, right); |
- T newBinaryModulo(T left, T right) |
- => newBinary('%', left, right); |
- T newBinaryTruncatingDivide(T left, T right) |
- => newBinary('~/', left, right); |
- T newBinaryLogicalAnd(T left, T right) |
- => newBinary('&&', left, right); |
- T newBinaryLogicalOr(T left, T right) |
- => newBinary('||', left, right); |
- T newBinaryEqual(T left, T right) |
- => newBinary('==', left, right); |
- T newBinaryNotEqual(T left, T right) |
- => newBinary('!=', left, right); |
- T newBinaryLessThan(T left, T right) |
- => newBinary('<', left, right); |
- T newBinaryGreaterThan(T left, T right) |
- => newBinary('>', left, right); |
- T newBinaryLessThanEqual(T left, T right) |
- => newBinary('<=', left, right); |
- T newBinaryGreaterThanEqual(T left, T right) |
- => newBinary('>=', left, right); |
+ T newBinary(String operation, T left, T right) => null; |
+ T newBinaryPlus(T left, T right) => newBinary('+', left, right); |
+ T newBinaryMinus(T left, T right) => newBinary('-', left, right); |
+ T newBinaryMultiply(T left, T right) => newBinary('*', left, right); |
+ T newBinaryDivide(T left, T right) => newBinary('/', left, right); |
+ T newBinaryModulo(T left, T right) => newBinary('%', left, right); |
+ T newBinaryTruncatingDivide(T left, T right) => newBinary('~/', left, right); |
+ T newBinaryLogicalAnd(T left, T right) => newBinary('&&', left, right); |
+ T newBinaryLogicalOr(T left, T right) => newBinary('||', left, right); |
+ T newBinaryEqual(T left, T right) => newBinary('==', left, right); |
+ T newBinaryNotEqual(T left, T right) => newBinary('!=', left, right); |
+ T newBinaryLessThan(T left, T right) => newBinary('<', left, right); |
+ T newBinaryGreaterThan(T left, T right) => newBinary('>', left, right); |
+ T newBinaryLessThanEqual(T left, T right) => newBinary('<=', left, right); |
+ T newBinaryGreaterThanEqual(T left, T right) => newBinary('>=', left, right); |
- T newLiteralPrimitive(value) |
- => null; |
- T newLiteralArray(List elements) |
- => null; |
- T newLiteralObject(List<String> keys, List values) |
- => null; |
- T newLiteralNull() |
- => newLiteralPrimitive(null); |
- T newLiteralZero() |
- => newLiteralNumber(0); |
- T newLiteralBoolean(bool value) |
- => newLiteralPrimitive(value); |
- T newLiteralNumber(num value) |
- => newLiteralPrimitive(value); |
- T newLiteralString(String value) |
- => null; |
+ T newLiteralPrimitive(value) => null; |
+ T newLiteralArray(List elements) => null; |
+ T newLiteralObject(List<String> keys, List values) => null; |
+ T newLiteralNull() => newLiteralPrimitive(null); |
+ T newLiteralZero() => newLiteralNumber(0); |
+ T newLiteralBoolean(bool value) => newLiteralPrimitive(value); |
+ T newLiteralNumber(num value) => newLiteralPrimitive(value); |
+ T newLiteralString(String value) => null; |
} |