| Index: third_party/pkg/angular/lib/core/parser/dynamic_parser.dart
|
| diff --git a/third_party/pkg/angular/lib/core/parser/dynamic_parser.dart b/third_party/pkg/angular/lib/core/parser/dynamic_parser.dart
|
| deleted file mode 100644
|
| index ef70c5920337ae68e432cfb38f50a2e2306d0c87..0000000000000000000000000000000000000000
|
| --- a/third_party/pkg/angular/lib/core/parser/dynamic_parser.dart
|
| +++ /dev/null
|
| @@ -1,160 +0,0 @@
|
| -library angular.core.parser.dynamic_parser;
|
| -
|
| -import 'package:angular/core/module.dart' show FilterMap, NgInjectableService;
|
| -
|
| -import 'package:angular/core/parser/parser.dart';
|
| -import 'package:angular/core/parser/lexer.dart';
|
| -import 'package:angular/core/parser/dynamic_parser_impl.dart';
|
| -import 'package:angular/core/parser/syntax.dart' show defaultFilterMap;
|
| -
|
| -import 'package:angular/core/parser/eval.dart';
|
| -import 'package:angular/core/parser/utils.dart' show EvalError;
|
| -
|
| -@NgInjectableService()
|
| -class ClosureMap {
|
| - Getter lookupGetter(String name) => null;
|
| - Setter lookupSetter(String name) => null;
|
| - Function lookupFunction(String name, int arity) => null;
|
| -}
|
| -
|
| -@NgInjectableService()
|
| -class DynamicParser implements Parser<Expression> {
|
| - final Lexer _lexer;
|
| - final ParserBackend _backend;
|
| - final Map<String, Expression> _cache = {};
|
| - DynamicParser(this._lexer, this._backend);
|
| -
|
| - Expression call(String input) {
|
| - if (input == null) input = '';
|
| - return _cache.putIfAbsent(input, () => _parse(input));
|
| - }
|
| -
|
| - Expression _parse(String input) {
|
| - DynamicParserImpl parser = new DynamicParserImpl(_lexer, _backend, input);
|
| - Expression expression = parser.parseChain();
|
| - return new DynamicExpression(expression);
|
| - }
|
| -}
|
| -
|
| -class DynamicExpression extends Expression {
|
| - final Expression _expression;
|
| - DynamicExpression(this._expression);
|
| -
|
| - bool get isAssignable => _expression.isAssignable;
|
| - bool get isChain => _expression.isChain;
|
| -
|
| - accept(Visitor visitor) => _expression.accept(visitor);
|
| - toString() => _expression.toString();
|
| -
|
| - eval(scope, [FilterMap filters = defaultFilterMap]) {
|
| - try {
|
| - return _expression.eval(scope, filters);
|
| - } on EvalError catch (e, s) {
|
| - throw e.unwrap("$this", s);
|
| - }
|
| - }
|
| -
|
| - assign(scope, value) {
|
| - try {
|
| - return _expression.assign(scope, value);
|
| - } on EvalError catch (e, s) {
|
| - throw e.unwrap("$this", s);
|
| - }
|
| - }
|
| -}
|
| -
|
| -@NgInjectableService()
|
| -class DynamicParserBackend extends ParserBackend {
|
| - final ClosureMap _closures;
|
| - DynamicParserBackend(this._closures);
|
| -
|
| - bool isAssignable(Expression expression)
|
| - => expression.isAssignable;
|
| -
|
| - Expression newFilter(expression, name, arguments) {
|
| - List allArguments = new List(arguments.length + 1);
|
| - allArguments[0] = expression;
|
| - allArguments.setAll(1, arguments);
|
| - return new Filter(expression, name, arguments, allArguments);
|
| - }
|
| -
|
| - Expression newChain(expressions)
|
| - => new Chain(expressions);
|
| - Expression newAssign(target, value)
|
| - => new Assign(target, value);
|
| - Expression newConditional(condition, yes, no)
|
| - => new Conditional(condition, yes, no);
|
| -
|
| - Expression newAccessKeyed(object, key)
|
| - => new AccessKeyed(object, key);
|
| - Expression newCallFunction(function, arguments)
|
| - => new CallFunction(function, arguments);
|
| -
|
| - Expression newPrefixNot(expression)
|
| - => new PrefixNot(expression);
|
| -
|
| - Expression newBinary(operation, left, right)
|
| - => new Binary(operation, left, right);
|
| -
|
| - Expression newLiteralPrimitive(value)
|
| - => new LiteralPrimitive(value);
|
| - Expression newLiteralArray(elements)
|
| - => new LiteralArray(elements);
|
| - Expression newLiteralObject(keys, values)
|
| - => new LiteralObject(keys, values);
|
| - Expression newLiteralString(value)
|
| - => new LiteralString(value);
|
| -
|
| -
|
| - Expression newAccessScope(name) {
|
| - Getter getter = _closures.lookupGetter(name);
|
| - Setter setter = _closures.lookupSetter(name);
|
| - if (getter != null && setter != null) {
|
| - return new AccessScopeFast(name, getter, setter);
|
| - } else {
|
| - return new AccessScope(name);
|
| - }
|
| - }
|
| -
|
| - Expression newAccessMember(object, name) {
|
| - Getter getter = _closures.lookupGetter(name);
|
| - Setter setter = _closures.lookupSetter(name);
|
| - if (getter != null && setter != null) {
|
| - return new AccessMemberFast(object, name, getter, setter);
|
| - } else {
|
| - return new AccessMember(object, name);
|
| - }
|
| - }
|
| -
|
| - Expression newCallScope(name, arguments) {
|
| - Function constructor = _computeCallConstructor(
|
| - _callScopeConstructors, name, arguments.length);
|
| - return (constructor != null)
|
| - ? constructor(name, arguments, _closures)
|
| - : new CallScope(name, arguments);
|
| - }
|
| -
|
| - Expression newCallMember(object, name, arguments) {
|
| - Function constructor = _computeCallConstructor(
|
| - _callMemberConstructors, name, arguments.length);
|
| - return (constructor != null)
|
| - ? constructor(object, name, arguments, _closures)
|
| - : new CallMember(object, name, arguments);
|
| - }
|
| -
|
| - Function _computeCallConstructor(Map constructors, String name, int arity) {
|
| - Function function = _closures.lookupFunction(name, arity);
|
| - return (function == null) ? null : constructors[arity];
|
| - }
|
| -
|
| - static final Map<int, Function> _callScopeConstructors = {
|
| - 0: (n, a, c) => new CallScopeFast0(n, a, c.lookupFunction(n, 0)),
|
| - 1: (n, a, c) => new CallScopeFast1(n, a, c.lookupFunction(n, 1)),
|
| - };
|
| -
|
| - static final Map<int, Function> _callMemberConstructors = {
|
| - 0: (o, n, a, c) => new CallMemberFast0(o, n, a, c.lookupFunction(n, 0)),
|
| - 1: (o, n, a, c) => new CallMemberFast1(o, n, a, c.lookupFunction(n, 1)),
|
| - };
|
| -}
|
| -
|
|
|