UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

1 lines 35.3 kB
{"version":3,"sources":["ast.js"],"names":[],"mappings":"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","file":"angular2/src/change_detection/parser/ast.es6","sourcesContent":["import {autoConvertAdd, isBlank, isPresent, FunctionWrapper, BaseException} from \"angular2/src/facade/lang\";\nimport {List, Map, ListWrapper, StringMapWrapper} from \"angular2/src/facade/collection\";\n\nexport class AST {\n eval(context, locals) {\n throw new BaseException(\"Not supported\");\n }\n\n get isAssignable() {\n return false;\n }\n\n assign(context, locals, value) {\n throw new BaseException(\"Not supported\");\n }\n\n visit(visitor) {\n }\n\n toString():string {\n return \"AST\";\n }\n}\n\nexport class EmptyExpr extends AST {\n eval(context, locals) {\n return null;\n }\n\n visit(visitor) {\n //do nothing\n }\n}\n\nexport class ImplicitReceiver extends AST {\n eval(context, locals) {\n return context;\n }\n\n visit(visitor) {\n return visitor.visitImplicitReceiver(this);\n }\n}\n\n/**\n * Multiple expressions separated by a semicolon.\n */\nexport class Chain extends AST {\n expressions:List;\n constructor(expressions:List) {\n super();\n this.expressions = expressions;\n }\n\n eval(context, locals) {\n var result;\n for (var i = 0; i < this.expressions.length; i++) {\n var last = this.expressions[i].eval(context, locals);\n if (isPresent(last)) result = last;\n }\n return result;\n }\n\n visit(visitor) {\n return visitor.visitChain(this);\n }\n}\n\nexport class Conditional extends AST {\n condition:AST;\n trueExp:AST;\n falseExp:AST;\n constructor(condition:AST, trueExp:AST, falseExp:AST){\n super();\n this.condition = condition;\n this.trueExp = trueExp;\n this.falseExp = falseExp;\n }\n\n eval(context, locals) {\n if(this.condition.eval(context, locals)) {\n return this.trueExp.eval(context, locals);\n } else {\n return this.falseExp.eval(context, locals);\n }\n }\n\n visit(visitor) {\n return visitor.visitConditional(this);\n }\n}\n\nexport class AccessMember extends AST {\n receiver:AST;\n name:string;\n getter:Function;\n setter:Function;\n constructor(receiver:AST, name:string, getter:Function, setter:Function) {\n super();\n this.receiver = receiver;\n this.name = name;\n this.getter = getter;\n this.setter = setter;\n }\n\n eval(context, locals) {\n if (this.receiver instanceof ImplicitReceiver &&\n isPresent(locals) && locals.contains(this.name)) {\n return locals.get(this.name);\n } else {\n var evaluatedReceiver = this.receiver.eval(context, locals);\n return this.getter(evaluatedReceiver);\n }\n }\n\n get isAssignable() {\n return true;\n }\n\n assign(context, locals, value) {\n var evaluatedContext = this.receiver.eval(context, locals);\n\n if (this.receiver instanceof ImplicitReceiver &&\n isPresent(locals) && locals.contains(this.name)) {\n throw new BaseException(`Cannot reassign a variable binding ${this.name}`);\n } else {\n return this.setter(evaluatedContext, value);\n }\n }\n\n visit(visitor) {\n return visitor.visitAccessMember(this);\n }\n}\n\nexport class KeyedAccess extends AST {\n obj:AST;\n key:AST;\n constructor(obj:AST, key:AST) {\n super();\n this.obj = obj;\n this.key = key;\n }\n\n eval(context, locals) {\n var obj = this.obj.eval(context, locals);\n var key = this.key.eval(context, locals);\n return obj[key];\n }\n\n get isAssignable() {\n return true;\n }\n\n assign(context, locals, value) {\n var obj = this.obj.eval(context, locals);\n var key = this.key.eval(context, locals);\n obj[key] = value;\n return value;\n }\n\n visit(visitor) {\n return visitor.visitKeyedAccess(this);\n }\n}\n\nexport class Pipe extends AST {\n exp:AST;\n name:string;\n args:List<AST>;\n inBinding:boolean;\n constructor(exp:AST, name:string, args:List, inBinding:boolean) {\n super();\n this.exp = exp;\n this.name = name;\n this.args = args;\n this.inBinding = inBinding;\n }\n\n visit(visitor) {\n return visitor.visitPipe(this);\n }\n}\n\nexport class LiteralPrimitive extends AST {\n value;\n constructor(value) {\n super();\n this.value = value;\n }\n\n eval(context, locals) {\n return this.value;\n }\n\n visit(visitor) {\n return visitor.visitLiteralPrimitive(this);\n }\n}\n\nexport class LiteralArray extends AST {\n expressions:List;\n constructor(expressions:List) {\n super();\n this.expressions = expressions;\n }\n\n eval(context, locals) {\n return ListWrapper.map(this.expressions, (e) => e.eval(context, locals));\n }\n\n visit(visitor) {\n return visitor.visitLiteralArray(this);\n }\n}\n\nexport class LiteralMap extends AST {\n keys:List;\n values:List;\n constructor(keys:List, values:List) {\n super();\n this.keys = keys;\n this.values = values;\n }\n\n eval(context, locals) {\n var res = StringMapWrapper.create();\n for(var i = 0; i < this.keys.length; ++i) {\n StringMapWrapper.set(res, this.keys[i], this.values[i].eval(context, locals));\n }\n return res;\n }\n\n visit(visitor) {\n return visitor.visitLiteralMap(this);\n }\n}\n\nexport class Interpolation extends AST {\n strings:List;\n expressions:List;\n constructor(strings:List, expressions:List) {\n super();\n this.strings = strings;\n this.expressions = expressions;\n }\n\n eval(context, locals) {\n throw new BaseException(\"evaluating an Interpolation is not supported\");\n }\n\n visit(visitor) {\n visitor.visitInterpolation(this);\n }\n}\n\nexport class Binary extends AST {\n operation:string;\n left:AST;\n right:AST;\n constructor(operation:string, left:AST, right:AST) {\n super();\n this.operation = operation;\n this.left = left;\n this.right = right;\n }\n\n eval(context, locals) {\n var left = this.left.eval(context, locals);\n switch (this.operation) {\n case '&&': return left && this.right.eval(context, locals);\n case '||': return left || this.right.eval(context, locals);\n }\n var right = this.right.eval(context, locals);\n\n switch (this.operation) {\n case '+' : return left + right;\n case '-' : return left - right;\n case '*' : return left * right;\n case '/' : return left / right;\n case '%' : return left % right;\n case '==' : return left == right;\n case '!=' : return left != right;\n case '<' : return left < right;\n case '>' : return left > right;\n case '<=' : return left <= right;\n case '>=' : return left >= right;\n case '^' : return left ^ right;\n case '&' : return left & right;\n }\n throw 'Internal error [$operation] not handled';\n }\n\n visit(visitor) {\n return visitor.visitBinary(this);\n }\n}\n\nexport class PrefixNot extends AST {\n expression:AST;\n constructor(expression:AST) {\n super();\n this.expression = expression;\n }\n\n eval(context, locals) {\n return !this.expression.eval(context, locals);\n }\n\n visit(visitor) {\n return visitor.visitPrefixNot(this);\n }\n}\n\nexport class Assignment extends AST {\n target:AST;\n value:AST;\n constructor(target:AST, value:AST) {\n super();\n this.target = target;\n this.value = value;\n }\n\n eval(context, locals) {\n return this.target.assign(context, locals, this.value.eval(context, locals));\n }\n\n visit(visitor) {\n return visitor.visitAssignment(this);\n }\n}\n\nexport class MethodCall extends AST {\n receiver:AST;\n fn:Function;\n args:List;\n name:string;\n constructor(receiver:AST, name:string, fn:Function, args:List) {\n super();\n this.receiver = receiver;\n this.fn = fn;\n this.args = args;\n this.name = name;\n }\n\n eval(context, locals) {\n var evaluatedArgs = evalList(context, locals, this.args);\n if (this.receiver instanceof ImplicitReceiver &&\n isPresent(locals) && locals.contains(this.name)) {\n var fn = locals.get(this.name);\n return FunctionWrapper.apply(fn, evaluatedArgs);\n } else {\n var evaluatedReceiver = this.receiver.eval(context, locals);\n return this.fn(evaluatedReceiver, evaluatedArgs);\n }\n }\n\n visit(visitor) {\n return visitor.visitMethodCall(this);\n }\n}\n\nexport class FunctionCall extends AST {\n target:AST;\n args:List;\n constructor(target:AST, args:List) {\n super();\n this.target = target;\n this.args = args;\n }\n\n eval(context, locals) {\n var obj = this.target.eval(context, locals);\n if (! (obj instanceof Function)) {\n throw new BaseException(`${obj} is not a function`);\n }\n return FunctionWrapper.apply(obj, evalList(context, locals, this.args));\n }\n\n visit(visitor) {\n return visitor.visitFunctionCall(this);\n }\n}\n\nexport class ASTWithSource extends AST {\n ast:AST;\n source:string;\n location:string;\n constructor(ast:AST, source:string, location:string) {\n super();\n this.source = source;\n this.location = location;\n this.ast = ast;\n }\n\n eval(context, locals) {\n return this.ast.eval(context, locals);\n }\n\n get isAssignable() {\n return this.ast.isAssignable;\n }\n\n assign(context, locals, value) {\n return this.ast.assign(context, locals, value);\n }\n\n visit(visitor) {\n return this.ast.visit(visitor);\n }\n\n toString():string {\n return `${this.source} in ${this.location}`;\n }\n}\n\nexport class TemplateBinding {\n key:string;\n keyIsVar:boolean;\n name:string;\n expression:ASTWithSource;\n constructor(key:string, keyIsVar:boolean, name:string, expression:ASTWithSource) {\n this.key = key;\n this.keyIsVar = keyIsVar;\n // only either name or expression will be filled.\n this.name = name;\n this.expression = expression;\n }\n}\n\n//INTERFACE\nexport class AstVisitor {\n visitAccessMember(ast:AccessMember) {}\n visitAssignment(ast:Assignment) {}\n visitBinary(ast:Binary) {}\n visitChain(ast:Chain){}\n visitConditional(ast:Conditional) {}\n visitPipe(ast:Pipe) {}\n visitFunctionCall(ast:FunctionCall) {}\n visitImplicitReceiver(ast:ImplicitReceiver) {}\n visitKeyedAccess(ast:KeyedAccess) {}\n visitLiteralArray(ast:LiteralArray) {}\n visitLiteralMap(ast:LiteralMap) {}\n visitLiteralPrimitive(ast:LiteralPrimitive) {}\n visitMethodCall(ast:MethodCall) {}\n visitPrefixNot(ast:PrefixNot) {}\n}\n\nexport class AstTransformer {\n visitImplicitReceiver(ast:ImplicitReceiver) {\n return new ImplicitReceiver();\n }\n\n visitInterpolation(ast:Interpolation) {\n return new Interpolation(ast.strings, this.visitAll(ast.expressions));\n }\n\n visitLiteralPrimitive(ast:LiteralPrimitive) {\n return new LiteralPrimitive(ast.value);\n }\n\n visitAccessMember(ast:AccessMember) {\n return new AccessMember(ast.receiver.visit(this), ast.name, ast.getter, ast.setter);\n }\n\n visitMethodCall(ast:MethodCall) {\n return new MethodCall(ast.receiver.visit(this), ast.name, ast.fn, this.visitAll(ast.args));\n }\n\n visitFunctionCall(ast:FunctionCall) {\n return new FunctionCall(ast.target.visit(this), this.visitAll(ast.args));\n }\n\n visitLiteralArray(ast:LiteralArray) {\n return new LiteralArray(this.visitAll(ast.expressions));\n }\n\n visitLiteralMap(ast:LiteralMap) {\n return new LiteralMap(ast.keys, this.visitAll(ast.values));\n }\n\n visitBinary(ast:Binary) {\n return new Binary(ast.operation, ast.left.visit(this), ast.right.visit(this));\n }\n\n visitPrefixNot(ast:PrefixNot) {\n return new PrefixNot(ast.expression.visit(this));\n }\n\n visitConditional(ast:Conditional) {\n return new Conditional(\n ast.condition.visit(this),\n ast.trueExp.visit(this),\n ast.falseExp.visit(this)\n );\n }\n\n visitPipe(ast:Pipe) {\n return new Pipe(ast.exp.visit(this), ast.name, this.visitAll(ast.args), ast.inBinding);\n }\n\n visitKeyedAccess(ast:KeyedAccess) {\n return new KeyedAccess(ast.obj.visit(this), ast.key.visit(this));\n }\n\n visitAll(asts:List) {\n var res = ListWrapper.createFixedSize(asts.length);\n for (var i = 0; i < asts.length; ++i) {\n res[i] = asts[i].visit(this);\n }\n return res;\n }\n}\n\nvar _evalListCache = [[],[0],[0,0],[0,0,0],[0,0,0,0],[0,0,0,0,0],\n [0,0,0,0,0,0], [0,0,0,0,0,0,0], [0,0,0,0,0,0,0,0], [0,0,0,0,0,0,0,0,0],\n [0,0,0,0,0,0,0,0,0]];\n\nfunction evalList(context, locals, exps:List){\n var length = exps.length;\n if (length > 10) {\n throw new BaseException(\"Cannot have more than 10 argument\");\n }\n\n var result = _evalListCache[length];\n for (var i = 0; i < length; i++) {\n result[i] = exps[i].eval(context, locals);\n }\n return result;\n}\n"]}