Class JsonMLAst
- java.lang.Object
-
- com.google.javascript.jscomp.jsonml.JsonMLAst
-
- All Implemented Interfaces:
SourceAst,java.io.Serializable
public class JsonMLAst extends java.lang.Object implements SourceAst
Generates an AST from a JsonML source file. JsonML format for representation of JavaScript is specified here.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearAst()Removes any references to root node of the AST.JsonMLconvertToJsonML()NodegetAstRoot(AbstractCompiler compiler)Generates AST based on AST representationJsonMLgetElementPreOrder(int n)Returns a JsonML element with the specified number from the tree in pre-order walk.InputIdgetInputId()SourceFilegetSourceFile()Returns the source file the generated AST represents.java.lang.StringgetSourceName()voidsetSourceFile(SourceFile file)Sets the source file the generated AST represents.
-
-
-
Constructor Detail
-
JsonMLAst
public JsonMLAst(JsonML jsonml)
-
-
Method Detail
-
clearAst
public void clearAst()
Description copied from interface:SourceAstRemoves any references to root node of the AST. If it is requested again, another parse will be performed. This method is needed to allow the ASTs to be garbage collected if the inputs are still around after compilation.
-
getAstRoot
public Node getAstRoot(AbstractCompiler compiler)
Generates AST based on AST representation- Specified by:
getAstRootin interfaceSourceAst- See Also:
SourceAst.getAstRoot(AbstractCompiler)
-
getSourceFile
public SourceFile getSourceFile()
Description copied from interface:SourceAstReturns the source file the generated AST represents.- Specified by:
getSourceFilein interfaceSourceAst
-
setSourceFile
public void setSourceFile(SourceFile file)
Description copied from interface:SourceAstSets the source file the generated AST represents. This can be called after deserializing if access to the source file is needed. If a different file is provided than that with which this was created, an IllegalStateException will be thrown.- Specified by:
setSourceFilein interfaceSourceAst
-
getSourceName
public java.lang.String getSourceName()
-
convertToJsonML
public JsonML convertToJsonML()
-
getElementPreOrder
public JsonML getElementPreOrder(int n)
Returns a JsonML element with the specified number from the tree in pre-order walk.- Returns:
- nth node or null if the node does not exists
-
getInputId
public InputId getInputId()
- Specified by:
getInputIdin interfaceSourceAst- Returns:
- The input id associated with this AST
-
-