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

Unified Diff: third_party/pkg/angular/lib/core/parser/dynamic_parser.dart

Issue 1058283006: Update pubspecs and dependencies to get pkgbuild tests working. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 8 months 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 side-by-side diff with in-line comments
Download patch
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)),
- };
-}
-

Powered by Google App Engine
This is Rietveld 408576698