Class AstWriter
java.lang.Object
org.teavm.backend.javascript.rendering.AstWriter
- Direct Known Subclasses:
TemplatingAstWriter
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intprotected booleanprotected final Set<org.mozilla.javascript.ast.Scope>protected final SourceWriter -
Constructor Summary
ConstructorsConstructorDescriptionAstWriter(SourceWriter writer, Function<String, NameEmitter> globalNameWriter) -
Method Summary
Modifier and TypeMethodDescriptionvoiddeclareName(String name) voiddeclareNameEmitter(String name, NameEmitter emitter) voidhoist(org.mozilla.javascript.ast.AstNode node) protected final booleanprotected booleanintrinsic(org.mozilla.javascript.ast.FunctionCall node, int precedence) protected booleanprotected voidonEnterScope(org.mozilla.javascript.ast.Scope scope) protected voidonLeaveScope(org.mozilla.javascript.ast.Scope scope) voidvoidbooleanprint(org.mozilla.javascript.ast.AstNode node) booleanprint(org.mozilla.javascript.ast.AstNode node, int precedence) protected voidprint(org.mozilla.javascript.ast.ElementGet node) protected booleanprint(org.mozilla.javascript.ast.FunctionNode node) voidprint(org.mozilla.javascript.ast.Name node, int precedence) voidprint(org.mozilla.javascript.ast.PropertyGet node) protected org.mozilla.javascript.ast.Scope
-
Field Details
-
PRECEDENCE_MEMBER
public static final int PRECEDENCE_MEMBER- See Also:
-
PRECEDENCE_FUNCTION
public static final int PRECEDENCE_FUNCTION- See Also:
-
PRECEDENCE_POSTFIX
public static final int PRECEDENCE_POSTFIX- See Also:
-
PRECEDENCE_PREFIX
public static final int PRECEDENCE_PREFIX- See Also:
-
PRECEDENCE_MUL
public static final int PRECEDENCE_MUL- See Also:
-
PRECEDENCE_ADD
public static final int PRECEDENCE_ADD- See Also:
-
PRECEDENCE_SHIFT
public static final int PRECEDENCE_SHIFT- See Also:
-
PRECEDENCE_RELATION
public static final int PRECEDENCE_RELATION- See Also:
-
PRECEDENCE_EQUALITY
public static final int PRECEDENCE_EQUALITY- See Also:
-
PRECEDENCE_BITWISE_AND
public static final int PRECEDENCE_BITWISE_AND- See Also:
-
PRECEDENCE_BITWISE_XOR
public static final int PRECEDENCE_BITWISE_XOR- See Also:
-
PRECEDENCE_BITWISE_OR
public static final int PRECEDENCE_BITWISE_OR- See Also:
-
PRECEDENCE_AND
public static final int PRECEDENCE_AND- See Also:
-
PRECEDENCE_OR
public static final int PRECEDENCE_OR- See Also:
-
PRECEDENCE_COND
public static final int PRECEDENCE_COND- See Also:
-
PRECEDENCE_ASSIGN
public static final int PRECEDENCE_ASSIGN- See Also:
-
PRECEDENCE_COMMA
public static final int PRECEDENCE_COMMA- See Also:
-
writer
-
rootScope
protected boolean rootScope -
currentScopes
-
topLevelScopes
-
-
Constructor Details
-
AstWriter
-
-
Method Details
-
inFunction
protected final boolean inFunction() -
declareName
-
declareNameEmitter
-
hoist
public void hoist(org.mozilla.javascript.ast.AstNode node) -
print
-
print
-
print
public boolean print(org.mozilla.javascript.ast.AstNode node) -
print
public boolean print(org.mozilla.javascript.ast.AstNode node, int precedence) -
print
protected void print(org.mozilla.javascript.ast.ElementGet node) -
print
public void print(org.mozilla.javascript.ast.PropertyGet node) -
intrinsic
protected boolean intrinsic(org.mozilla.javascript.ast.FunctionCall node, int precedence) -
print
public void print(org.mozilla.javascript.ast.Name node, int precedence) -
print
protected boolean print(org.mozilla.javascript.ast.FunctionNode node) -
onEnterScope
protected void onEnterScope(org.mozilla.javascript.ast.Scope scope) -
onLeaveScope
protected void onLeaveScope(org.mozilla.javascript.ast.Scope scope) -
scopeOfId
-
isTopLevel
protected boolean isTopLevel()
-