| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 package com.google.dart.compiler.util; | 5 package com.google.dart.compiler.util; |
| 6 | 6 |
| 7 import com.google.dart.compiler.InternalCompilerException; | 7 import com.google.dart.compiler.InternalCompilerException; |
| 8 import com.google.dart.compiler.backend.js.ast.JsArrayAccess; | 8 import com.google.dart.compiler.backend.js.ast.JsArrayAccess; |
| 9 import com.google.dart.compiler.backend.js.ast.JsBinaryOperation; | 9 import com.google.dart.compiler.backend.js.ast.JsBinaryOperation; |
| 10 import com.google.dart.compiler.backend.js.ast.JsBinaryOperator; | 10 import com.google.dart.compiler.backend.js.ast.JsBinaryOperator; |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 } | 59 } |
| 60 | 60 |
| 61 public static JsNameRef newNameRef(JsExpression qualifier, String prop) { | 61 public static JsNameRef newNameRef(JsExpression qualifier, String prop) { |
| 62 JsNameRef nameRef = new JsNameRef(prop); | 62 JsNameRef nameRef = new JsNameRef(prop); |
| 63 if (qualifier != null) { | 63 if (qualifier != null) { |
| 64 nameRef.setQualifier(qualifier); | 64 nameRef.setQualifier(qualifier); |
| 65 } | 65 } |
| 66 return nameRef; | 66 return nameRef; |
| 67 } | 67 } |
| 68 | 68 |
| 69 public static JsNameRef nameref(SourceInfo info, JsName qualifier, JsName prop
) { |
| 70 JsNameRef nameRef = new JsNameRef(prop); |
| 71 if (qualifier != null) { |
| 72 nameRef.setQualifier(qualifier.makeRef()); |
| 73 } |
| 74 nameRef.setSourceRef(info); |
| 75 return nameRef; |
| 76 } |
| 77 |
| 69 public static JsNameRef newNameRef(JsExpression qualifier, JsName prop) { | 78 public static JsNameRef newNameRef(JsExpression qualifier, JsName prop) { |
| 70 JsNameRef nameRef = new JsNameRef(prop); | 79 JsNameRef nameRef = new JsNameRef(prop); |
| 71 if (qualifier != null) { | 80 if (qualifier != null) { |
| 72 nameRef.setQualifier(qualifier); | 81 nameRef.setQualifier(qualifier); |
| 73 } | 82 } |
| 74 return nameRef; | 83 return nameRef; |
| 75 } | 84 } |
| 76 | 85 |
| 77 public static JsNameRef newPrototypeNameRef(JsExpression qualifier) { | 86 public static JsNameRef newPrototypeNameRef(JsExpression qualifier) { |
| 78 return newNameRef(qualifier, "prototype"); | 87 return newNameRef(qualifier, "prototype"); |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 167 } | 176 } |
| 168 } | 177 } |
| 169 fn.setBody(newBlock(stmts)); | 178 fn.setBody(newBlock(stmts)); |
| 170 return fn; | 179 return fn; |
| 171 } | 180 } |
| 172 | 181 |
| 173 public static JsInvocation call(SourceInfo src, JsExpression target, JsExpress
ion ... params) { | 182 public static JsInvocation call(SourceInfo src, JsExpression target, JsExpress
ion ... params) { |
| 174 return (JsInvocation) newInvocation(target, params).setSourceRef(src); | 183 return (JsInvocation) newInvocation(target, params).setSourceRef(src); |
| 175 } | 184 } |
| 176 | 185 |
| 177 public static JsExpression comma(SourceInfo src, JsExpression op1, JsExpressio
n op2) { | 186 public static JsBinaryOperation comma(SourceInfo src, JsExpression op1, JsExpr
ession op2) { |
| 178 return new JsBinaryOperation(JsBinaryOperator.COMMA, op1, op2).setSourceRef(
src); | 187 return (JsBinaryOperation)new JsBinaryOperation(JsBinaryOperator.COMMA, op1,
op2) |
| 188 .setSourceRef(src); |
| 179 } | 189 } |
| 180 | 190 |
| 181 public static JsNameRef nameref(SourceInfo src, String name) { | 191 public static JsNameRef nameref(SourceInfo src, String name) { |
| 182 return (JsNameRef) new JsNameRef(name).setSourceRef(src); | 192 return (JsNameRef) new JsNameRef(name).setSourceRef(src); |
| 183 } | 193 } |
| 184 | 194 |
| 185 public static JsNameRef nameref(SourceInfo src, JsName qualifier, String prop)
{ | 195 public static JsNameRef nameref(SourceInfo src, JsName qualifier, String prop)
{ |
| 186 return AstUtil.nameref(src, qualifier.makeRef().setSourceRef(src), prop); | 196 return AstUtil.nameref(src, qualifier.makeRef().setSourceRef(src), prop); |
| 187 } | 197 } |
| 188 | 198 |
| 189 public static JsNameRef nameref(SourceInfo src, JsExpression qualifier, String
prop) { | 199 public static JsNameRef nameref(SourceInfo src, JsExpression qualifier, String
prop) { |
| 190 return (JsNameRef) newNameRef(qualifier, prop).setSourceRef(src); | 200 return (JsNameRef) newNameRef(qualifier, prop).setSourceRef(src); |
| 191 } | 201 } |
| 192 | 202 |
| 193 public static JsExpression assign(SourceInfo src, JsNameRef op1, JsExpression
op2) { | 203 public static JsExpression assign(SourceInfo src, JsNameRef op1, JsExpression
op2) { |
| 194 return newAssignment(op1, op2).setSourceRef(src); | 204 return newAssignment(op1, op2).setSourceRef(src); |
| 195 } | 205 } |
| 196 | 206 |
| 197 public static JsExpression neq(SourceInfo src, JsExpression op1, JsExpression
op2) { | 207 public static JsExpression neq(SourceInfo src, JsExpression op1, JsExpression
op2) { |
| 198 return new JsBinaryOperation(JsBinaryOperator.NEQ, op1, op2).setSourceRef(sr
c); | 208 return new JsBinaryOperation(JsBinaryOperator.NEQ, op1, op2).setSourceRef(sr
c); |
| 199 } | 209 } |
| 200 | 210 |
| 201 public static JsExpression not(SourceInfo src, JsExpression op1) { | 211 public static JsExpression not(SourceInfo src, JsExpression op1) { |
| 202 return new JsPrefixOperation(JsUnaryOperator.NOT, op1).setSourceRef(src); | 212 return new JsPrefixOperation(JsUnaryOperator.NOT, op1).setSourceRef(src); |
| 203 } | 213 } |
| 204 | 214 |
| 215 public static JsExpression preinc(SourceInfo src, JsExpression op1) { |
| 216 return new JsPrefixOperation(JsUnaryOperator.INC, op1).setSourceRef(src); |
| 217 } |
| 218 |
| 205 public static JsExpression and(SourceInfo src, JsExpression op1, JsExpression
op2) { | 219 public static JsExpression and(SourceInfo src, JsExpression op1, JsExpression
op2) { |
| 206 return new JsBinaryOperation(JsBinaryOperator.AND, op1, op2); | 220 return new JsBinaryOperation(JsBinaryOperator.AND, op1, op2).setSourceRef(sr
c); |
| 221 } |
| 222 |
| 223 public static JsExpression in(SourceInfo src, JsExpression propName, JsExpress
ion obj) { |
| 224 return new JsBinaryOperation(JsBinaryOperator.INOP, propName, obj).setSource
Ref(src); |
| 207 } | 225 } |
| 208 } | 226 } |
| OLD | NEW |