org.jruby.ast.visitor.rewriter
Class ReWriteVisitor
java.lang.Object
org.jruby.ast.visitor.rewriter.ReWriteVisitor
- All Implemented Interfaces:
- NodeVisitor
- Direct Known Subclasses:
- DRegxReWriteVisitor, HereDocReWriteVisitor, IgnoreCommentsReWriteVisitor, MultipleAssignmentReWriteVisitor, ShortIfNodeReWriteVisitor
public class ReWriteVisitor
- extends java.lang.Object
- implements NodeVisitor
Visits each node and outputs the corresponding Ruby sourcecode for the nodes.
- Author:
- Mirko Stocker
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
config
protected final ReWriterContext config
factory
protected final ReWriterFactory factory
ReWriteVisitor
public ReWriteVisitor(java.io.Writer out,
java.lang.String source)
ReWriteVisitor
public ReWriteVisitor(java.io.OutputStream out,
java.lang.String source)
ReWriteVisitor
public ReWriteVisitor(ReWriterContext config)
flushStream
public void flushStream()
print
protected void print(java.lang.String s)
print
protected void print(char c)
print
protected void print(java.math.BigInteger i)
print
protected void print(int i)
print
protected void print(long l)
print
protected void print(double d)
printNewlineAndIndentation
protected void printNewlineAndIndentation()
printCommentsAfter
protected boolean printCommentsAfter(Node iVisited)
visitNode
public void visitNode(Node iVisited)
visitIter
public void visitIter(java.util.Iterator iterator)
visitAndPrintWithSeparator
public void visitAndPrintWithSeparator(java.util.Iterator<Node> it)
visitAliasNode
public Instruction visitAliasNode(AliasNode iVisited)
- Specified by:
visitAliasNode
in interface NodeVisitor
visitAndNode
public Instruction visitAndNode(AndNode iVisited)
- Specified by:
visitAndNode
in interface NodeVisitor
visitArgsNode
public Instruction visitArgsNode(ArgsNode iVisited)
- Specified by:
visitArgsNode
in interface NodeVisitor
visitArgsCatNode
public Instruction visitArgsCatNode(ArgsCatNode iVisited)
- Specified by:
visitArgsCatNode
in interface NodeVisitor
visitArrayNode
public Instruction visitArrayNode(ArrayNode iVisited)
- Specified by:
visitArrayNode
in interface NodeVisitor
visitBackRefNode
public Instruction visitBackRefNode(BackRefNode iVisited)
- Specified by:
visitBackRefNode
in interface NodeVisitor
visitBeginNode
public Instruction visitBeginNode(BeginNode iVisited)
- Specified by:
visitBeginNode
in interface NodeVisitor
visitBignumNode
public Instruction visitBignumNode(BignumNode iVisited)
- Specified by:
visitBignumNode
in interface NodeVisitor
visitBlockArgNode
public Instruction visitBlockArgNode(BlockArgNode iVisited)
- Specified by:
visitBlockArgNode
in interface NodeVisitor
visitBlockNode
public Instruction visitBlockNode(BlockNode iVisited)
- Specified by:
visitBlockNode
in interface NodeVisitor
getLocalVarIndex
public static int getLocalVarIndex(Node n)
visitBlockPassNode
public Instruction visitBlockPassNode(BlockPassNode iVisited)
- Specified by:
visitBlockPassNode
in interface NodeVisitor
visitBreakNode
public Instruction visitBreakNode(BreakNode iVisited)
- Specified by:
visitBreakNode
in interface NodeVisitor
visitConstDeclNode
public Instruction visitConstDeclNode(ConstDeclNode iVisited)
- Specified by:
visitConstDeclNode
in interface NodeVisitor
visitClassVarAsgnNode
public Instruction visitClassVarAsgnNode(ClassVarAsgnNode iVisited)
- Specified by:
visitClassVarAsgnNode
in interface NodeVisitor
visitClassVarDeclNode
public Instruction visitClassVarDeclNode(ClassVarDeclNode iVisited)
- Specified by:
visitClassVarDeclNode
in interface NodeVisitor
visitClassVarNode
public Instruction visitClassVarNode(ClassVarNode iVisited)
- Specified by:
visitClassVarNode
in interface NodeVisitor
printAssignmentOperator
protected void printAssignmentOperator()
inMultipleAssignment
protected boolean inMultipleAssignment()
visitCallNode
public Instruction visitCallNode(CallNode iVisited)
- Specified by:
visitCallNode
in interface NodeVisitor
visitCaseNode
public Instruction visitCaseNode(CaseNode iVisited)
- Specified by:
visitCaseNode
in interface NodeVisitor
visitClassNode
public Instruction visitClassNode(ClassNode iVisited)
- Specified by:
visitClassNode
in interface NodeVisitor
visitColon2Node
public Instruction visitColon2Node(Colon2Node iVisited)
- Specified by:
visitColon2Node
in interface NodeVisitor
visitColon3Node
public Instruction visitColon3Node(Colon3Node iVisited)
- Specified by:
visitColon3Node
in interface NodeVisitor
visitConstNode
public Instruction visitConstNode(ConstNode iVisited)
- Specified by:
visitConstNode
in interface NodeVisitor
visitDAsgnNode
public Instruction visitDAsgnNode(DAsgnNode iVisited)
- Specified by:
visitDAsgnNode
in interface NodeVisitor
visitDRegxNode
public Instruction visitDRegxNode(DRegexpNode iVisited)
- Specified by:
visitDRegxNode
in interface NodeVisitor
visitDStrNode
public Instruction visitDStrNode(DStrNode iVisited)
- Specified by:
visitDStrNode
in interface NodeVisitor
visitDSymbolNode
public Instruction visitDSymbolNode(DSymbolNode iVisited)
- Specified by:
visitDSymbolNode
in interface NodeVisitor
visitDVarNode
public Instruction visitDVarNode(DVarNode iVisited)
- Specified by:
visitDVarNode
in interface NodeVisitor
visitDXStrNode
public Instruction visitDXStrNode(DXStrNode iVisited)
- Specified by:
visitDXStrNode
in interface NodeVisitor
visitDefinedNode
public Instruction visitDefinedNode(DefinedNode iVisited)
- Specified by:
visitDefinedNode
in interface NodeVisitor
printCommentsAtEnd
protected void printCommentsAtEnd(Node n)
visitDefnNode
public Instruction visitDefnNode(DefnNode iVisited)
- Specified by:
visitDefnNode
in interface NodeVisitor
visitDefsNode
public Instruction visitDefsNode(DefsNode iVisited)
- Specified by:
visitDefsNode
in interface NodeVisitor
visitDotNode
public Instruction visitDotNode(DotNode iVisited)
- Specified by:
visitDotNode
in interface NodeVisitor
visitEnsureNode
public Instruction visitEnsureNode(EnsureNode iVisited)
- Specified by:
visitEnsureNode
in interface NodeVisitor
visitEvStrNode
public Instruction visitEvStrNode(EvStrNode iVisited)
- Specified by:
visitEvStrNode
in interface NodeVisitor
visitFCallNode
public Instruction visitFCallNode(FCallNode iVisited)
- Specified by:
visitFCallNode
in interface NodeVisitor
visitFalseNode
public Instruction visitFalseNode(FalseNode iVisited)
- Specified by:
visitFalseNode
in interface NodeVisitor
visitFixnumNode
public Instruction visitFixnumNode(FixnumNode iVisited)
- Specified by:
visitFixnumNode
in interface NodeVisitor
visitFlipNode
public Instruction visitFlipNode(FlipNode iVisited)
- Specified by:
visitFlipNode
in interface NodeVisitor
visitFloatNode
public Instruction visitFloatNode(FloatNode iVisited)
- Specified by:
visitFloatNode
in interface NodeVisitor
visitForNode
public Instruction visitForNode(ForNode iVisited)
- Specified by:
visitForNode
in interface NodeVisitor
visitGlobalAsgnNode
public Instruction visitGlobalAsgnNode(GlobalAsgnNode iVisited)
- Specified by:
visitGlobalAsgnNode
in interface NodeVisitor
visitGlobalVarNode
public Instruction visitGlobalVarNode(GlobalVarNode iVisited)
- Specified by:
visitGlobalVarNode
in interface NodeVisitor
visitHashNode
public Instruction visitHashNode(HashNode iVisited)
- Specified by:
visitHashNode
in interface NodeVisitor
visitInstAsgnNode
public Instruction visitInstAsgnNode(InstAsgnNode iVisited)
- Specified by:
visitInstAsgnNode
in interface NodeVisitor
visitInstVarNode
public Instruction visitInstVarNode(InstVarNode iVisited)
- Specified by:
visitInstVarNode
in interface NodeVisitor
visitIfNode
public Instruction visitIfNode(IfNode iVisited)
- Specified by:
visitIfNode
in interface NodeVisitor
visitIterNode
public Instruction visitIterNode(IterNode iVisited)
- Specified by:
visitIterNode
in interface NodeVisitor
visitLocalAsgnNode
public Instruction visitLocalAsgnNode(LocalAsgnNode iVisited)
- Specified by:
visitLocalAsgnNode
in interface NodeVisitor
visitLocalVarNode
public Instruction visitLocalVarNode(LocalVarNode iVisited)
- Specified by:
visitLocalVarNode
in interface NodeVisitor
visitMultipleAsgnNode
public Instruction visitMultipleAsgnNode(MultipleAsgnNode iVisited)
- Specified by:
visitMultipleAsgnNode
in interface NodeVisitor
visitMatch2Node
public Instruction visitMatch2Node(Match2Node iVisited)
- Specified by:
visitMatch2Node
in interface NodeVisitor
visitMatch3Node
public Instruction visitMatch3Node(Match3Node iVisited)
- Specified by:
visitMatch3Node
in interface NodeVisitor
visitMatchNode
public Instruction visitMatchNode(MatchNode iVisited)
- Specified by:
visitMatchNode
in interface NodeVisitor
visitModuleNode
public Instruction visitModuleNode(ModuleNode iVisited)
- Specified by:
visitModuleNode
in interface NodeVisitor
visitNewlineNode
public Instruction visitNewlineNode(NewlineNode iVisited)
- Specified by:
visitNewlineNode
in interface NodeVisitor
visitNextNode
public Instruction visitNextNode(NextNode iVisited)
- Specified by:
visitNextNode
in interface NodeVisitor
visitNilNode
public Instruction visitNilNode(NilNode iVisited)
- Specified by:
visitNilNode
in interface NodeVisitor
visitNotNode
public Instruction visitNotNode(NotNode iVisited)
- Specified by:
visitNotNode
in interface NodeVisitor
visitNthRefNode
public Instruction visitNthRefNode(NthRefNode iVisited)
- Specified by:
visitNthRefNode
in interface NodeVisitor
visitOpElementAsgnNode
public Instruction visitOpElementAsgnNode(OpElementAsgnNode iVisited)
- Specified by:
visitOpElementAsgnNode
in interface NodeVisitor
visitOpAsgnNode
public Instruction visitOpAsgnNode(OpAsgnNode iVisited)
- Specified by:
visitOpAsgnNode
in interface NodeVisitor
visitOpAsgnAndNode
public Instruction visitOpAsgnAndNode(OpAsgnAndNode iVisited)
- Specified by:
visitOpAsgnAndNode
in interface NodeVisitor
visitOpAsgnOrNode
public Instruction visitOpAsgnOrNode(OpAsgnOrNode iVisited)
- Specified by:
visitOpAsgnOrNode
in interface NodeVisitor
visitOrNode
public Instruction visitOrNode(OrNode iVisited)
- Specified by:
visitOrNode
in interface NodeVisitor
visitPostExeNode
public Instruction visitPostExeNode(PostExeNode iVisited)
- Specified by:
visitPostExeNode
in interface NodeVisitor
visitPreExeNode
public Instruction visitPreExeNode(PreExeNode iVisited)
- Specified by:
visitPreExeNode
in interface NodeVisitor
visitRedoNode
public Instruction visitRedoNode(RedoNode iVisited)
- Specified by:
visitRedoNode
in interface NodeVisitor
visitRegexpNode
public Instruction visitRegexpNode(RegexpNode iVisited)
- Specified by:
visitRegexpNode
in interface NodeVisitor
firstChild
public static Node firstChild(Node n)
visitRescueBodyNode
public Instruction visitRescueBodyNode(RescueBodyNode iVisited)
- Specified by:
visitRescueBodyNode
in interface NodeVisitor
visitRescueNode
public Instruction visitRescueNode(RescueNode iVisited)
- Specified by:
visitRescueNode
in interface NodeVisitor
visitRetryNode
public Instruction visitRetryNode(RetryNode iVisited)
- Specified by:
visitRetryNode
in interface NodeVisitor
unwrapSingleArrayNode
public static Node unwrapSingleArrayNode(Node n)
visitReturnNode
public Instruction visitReturnNode(ReturnNode iVisited)
- Specified by:
visitReturnNode
in interface NodeVisitor
visitSClassNode
public Instruction visitSClassNode(SClassNode iVisited)
- Specified by:
visitSClassNode
in interface NodeVisitor
visitSelfNode
public Instruction visitSelfNode(SelfNode iVisited)
- Specified by:
visitSelfNode
in interface NodeVisitor
visitSplatNode
public Instruction visitSplatNode(SplatNode iVisited)
- Specified by:
visitSplatNode
in interface NodeVisitor
getSeparatorForSym
protected char getSeparatorForSym(Node n)
getSeparatorForStr
protected char getSeparatorForStr(Node n)
inDRegxNode
protected boolean inDRegxNode()
visitStrNode
public Instruction visitStrNode(StrNode iVisited)
- Specified by:
visitStrNode
in interface NodeVisitor
unescapeChar
public static java.lang.String unescapeChar(char escapedChar)
visitSuperNode
public Instruction visitSuperNode(SuperNode iVisited)
- Specified by:
visitSuperNode
in interface NodeVisitor
visitSValueNode
public Instruction visitSValueNode(SValueNode iVisited)
- Specified by:
visitSValueNode
in interface NodeVisitor
visitSymbolNode
public Instruction visitSymbolNode(SymbolNode iVisited)
- Specified by:
visitSymbolNode
in interface NodeVisitor
visitToAryNode
public Instruction visitToAryNode(ToAryNode iVisited)
- Specified by:
visitToAryNode
in interface NodeVisitor
visitTrueNode
public Instruction visitTrueNode(TrueNode iVisited)
- Specified by:
visitTrueNode
in interface NodeVisitor
visitUndefNode
public Instruction visitUndefNode(UndefNode iVisited)
- Specified by:
visitUndefNode
in interface NodeVisitor
visitUntilNode
public Instruction visitUntilNode(UntilNode iVisited)
- Specified by:
visitUntilNode
in interface NodeVisitor
visitVAliasNode
public Instruction visitVAliasNode(VAliasNode iVisited)
- Specified by:
visitVAliasNode
in interface NodeVisitor
visitVCallNode
public Instruction visitVCallNode(VCallNode iVisited)
- Specified by:
visitVCallNode
in interface NodeVisitor
visitNodeInIndentation
public void visitNodeInIndentation(Node n)
visitWhenNode
public Instruction visitWhenNode(WhenNode iVisited)
- Specified by:
visitWhenNode
in interface NodeVisitor
visitNewlineInParentheses
protected void visitNewlineInParentheses(Node n)
visitWhileNode
public Instruction visitWhileNode(WhileNode iVisited)
- Specified by:
visitWhileNode
in interface NodeVisitor
visitXStrNode
public Instruction visitXStrNode(XStrNode iVisited)
- Specified by:
visitXStrNode
in interface NodeVisitor
visitYieldNode
public Instruction visitYieldNode(YieldNode iVisited)
- Specified by:
visitYieldNode
in interface NodeVisitor
visitZArrayNode
public Instruction visitZArrayNode(ZArrayNode iVisited)
- Specified by:
visitZArrayNode
in interface NodeVisitor
visitZSuperNode
public Instruction visitZSuperNode(ZSuperNode iVisited)
- Specified by:
visitZSuperNode
in interface NodeVisitor
getEndOffset
protected static int getEndOffset(Node n)
getConfig
public ReWriterContext getConfig()
createCodeFromNode
public static java.lang.String createCodeFromNode(Node node,
java.lang.String document)
createCodeFromNode
public static java.lang.String createCodeFromNode(Node node,
java.lang.String document,
FormatHelper helper)
visitArgsPushNode
public Instruction visitArgsPushNode(ArgsPushNode node)
- Specified by:
visitArgsPushNode
in interface NodeVisitor
visitAttrAssignNode
public Instruction visitAttrAssignNode(AttrAssignNode iVisited)
- Specified by:
visitAttrAssignNode
in interface NodeVisitor
visitRootNode
public Instruction visitRootNode(RootNode iVisited)
- Specified by:
visitRootNode
in interface NodeVisitor
Copyright © 2002-2007 JRuby Team. All Rights Reserved.