org.jruby.compiler
Class ASTCompiler

java.lang.Object
  extended by org.jruby.compiler.ASTCompiler

public class ASTCompiler
extends java.lang.Object

Author:
headius

Nested Class Summary
 class ASTCompiler.SpecificArityArguments
           
 class ASTCompiler.VariableArityArguments
           
 
Constructor Summary
ASTCompiler()
           
 
Method Summary
 void compile(Node node, BodyCompiler context)
           
 void compileAlias(Node node, BodyCompiler context)
           
 void compileAnd(Node node, BodyCompiler context)
           
 void compileArgs(Node node, BodyCompiler context)
           
 void compileArgsCat(Node node, BodyCompiler context)
           
 void compileArgsCatArguments(Node node, BodyCompiler context)
           
 void compileArgsPush(Node node, BodyCompiler context)
           
 void compileArgsPushArguments(Node node, BodyCompiler context)
           
 void compileArguments(Node node, BodyCompiler context)
           
 void compileArray(Node node, BodyCompiler context)
           
 void compileArrayArguments(Node node, BodyCompiler context)
           
 void compileAssignment(Node node, BodyCompiler context)
           
 void compileAttrAssignAssignment(Node node, BodyCompiler context)
           
 void compileBackref(Node node, BodyCompiler context)
           
 void compileBegin(Node node, BodyCompiler context)
           
 void compileBignum(Node node, BodyCompiler context)
           
 void compileBlock(Node node, BodyCompiler context)
           
 void compileBreak(Node node, BodyCompiler context)
           
 void compileCall(Node node, BodyCompiler context)
           
 void compileCase(Node node, BodyCompiler context)
           
 void compileClass(Node node, BodyCompiler context)
           
 void compileClassVar(Node node, BodyCompiler context)
           
 void compileClassVarAsgn(Node node, BodyCompiler context)
           
 void compileClassVarAsgnAssignment(Node node, BodyCompiler context)
           
 void compileClassVarDecl(Node node, BodyCompiler context)
           
 void compileClassVarDeclAssignment(Node node, BodyCompiler context)
           
 void compileColon2(Node node, BodyCompiler context)
           
 void compileColon3(Node node, BodyCompiler context)
           
 void compileConst(Node node, BodyCompiler context)
           
 void compileConstDecl(Node node, BodyCompiler context)
           
 void compileConstDeclAssignment(Node node, BodyCompiler context)
           
 void compileDAsgn(Node node, BodyCompiler context)
           
 void compileDAsgnAssignment(Node node, BodyCompiler context)
           
 void compileDefined(Node node, BodyCompiler context)
           
 void compileDefn(Node node, BodyCompiler context)
           
 void compileDefs(Node node, BodyCompiler context)
           
 void compileDot(Node node, BodyCompiler context)
           
 void compileDRegexp(Node node, BodyCompiler context)
           
 void compileDStr(Node node, BodyCompiler context)
           
 void compileDSymbol(Node node, BodyCompiler context)
           
 void compileDVar(Node node, BodyCompiler context)
           
 void compileDXStr(Node node, BodyCompiler context)
           
 void compileEnsureNode(Node node, BodyCompiler context)
           
 void compileEvStr(Node node, BodyCompiler context)
           
 void compileFalse(Node node, BodyCompiler context)
           
 void compileFCall(Node node, BodyCompiler context)
           
 void compileFixnum(Node node, BodyCompiler context)
           
 void compileFixnumCase(Node node, BodyCompiler context)
           
 void compileFlip(Node node, BodyCompiler context)
           
 void compileFloat(Node node, BodyCompiler context)
           
 void compileFor(Node node, BodyCompiler context)
           
 void compileForIter(Node node, BodyCompiler context)
           
 void compileGetArgumentDefinition(Node node, BodyCompiler context, java.lang.String type)
           
 void compileGetDefinition(Node node, BodyCompiler context)
           
 void compileGetDefinitionBase(Node node, BodyCompiler context)
           
 void compileGlobalAsgn(Node node, BodyCompiler context)
           
 void compileGlobalAsgnAssignment(Node node, BodyCompiler context)
           
 void compileGlobalVar(Node node, BodyCompiler context)
           
 void compileHash(Node node, BodyCompiler context)
           
 void compileIf(Node node, BodyCompiler context)
           
 void compileInstAsgn(Node node, BodyCompiler context)
           
 void compileInstAsgnAssignment(Node node, BodyCompiler context)
           
 void compileInstVar(Node node, BodyCompiler context)
           
 void compileIter(Node node, BodyCompiler context)
           
 void compileJavaRescueBody(Node node, BodyCompiler context)
           
 void compileLocalAsgn(Node node, BodyCompiler context)
           
 void compileLocalAsgnAssignment(Node node, BodyCompiler context)
           
 void compileLocalVar(Node node, BodyCompiler context)
           
 void compileMatch(Node node, BodyCompiler context)
           
 void compileMatch2(Node node, BodyCompiler context)
           
 void compileMatch3(Node node, BodyCompiler context)
           
 void compileModule(Node node, BodyCompiler context)
           
 void compileMultiArgWhen(WhenNode whenNode, ArrayNode expressionsNode, int conditionIndex, BodyCompiler context, boolean hasCase)
           
 void compileMultipleAsgn(Node node, BodyCompiler context)
           
 void compileMultipleAsgnAssignment(Node node, BodyCompiler context)
           
 void compileNewline(Node node, BodyCompiler context)
           
 void compileNext(Node node, BodyCompiler context)
           
 void compileNil(Node node, BodyCompiler context)
           
 void compileNot(Node node, BodyCompiler context)
           
 void compileNthRef(Node node, BodyCompiler context)
           
 void compileOpAsgn(Node node, BodyCompiler context)
           
 void compileOpAsgnAnd(Node node, BodyCompiler context)
           
 void compileOpAsgnOr(Node node, BodyCompiler context)
           
 void compileOpAsgnWithAnd(Node node, BodyCompiler context)
           
 void compileOpAsgnWithMethod(Node node, BodyCompiler context)
           
 void compileOpAsgnWithOr(Node node, BodyCompiler context)
           
 void compileOpElementAsgn(Node node, BodyCompiler context)
           
 void compileOpElementAsgnWithAnd(Node node, BodyCompiler context)
           
 void compileOpElementAsgnWithMethod(Node node, BodyCompiler context)
           
 void compileOpElementAsgnWithOr(Node node, BodyCompiler context)
           
 void compileOr(Node node, BodyCompiler context)
           
 void compilePostExe(Node node, BodyCompiler context)
           
 void compilePreExe(Node node, BodyCompiler context)
           
 void compileRedo(Node node, BodyCompiler context)
           
 void compileRegexp(Node node, BodyCompiler context)
           
 void compileRescue(Node node, BodyCompiler context)
           
 void compileRescueBody(Node node, BodyCompiler context)
           
 void compileRetry(Node node, BodyCompiler context)
           
 void compileReturn(Node node, BodyCompiler context)
           
 void compileRoot(Node node, ScriptCompiler context, ASTInspector inspector)
           
 void compileRoot(Node node, ScriptCompiler context, ASTInspector inspector, boolean load, boolean main)
           
 void compileSClass(Node node, BodyCompiler context)
           
 void compileSelf(Node node, BodyCompiler context)
           
 void compileSplat(Node node, BodyCompiler context)
           
 void compileSplatArguments(Node node, BodyCompiler context)
           
 void compileStr(Node node, BodyCompiler context)
           
 void compileSuper(Node node, BodyCompiler context)
           
 void compileSValue(Node node, BodyCompiler context)
           
 void compileSymbol(Node node, BodyCompiler context)
           
 void compileToAry(Node node, BodyCompiler context)
           
 void compileTrue(Node node, BodyCompiler context)
           
 void compileUndef(Node node, BodyCompiler context)
           
 void compileUntil(Node node, BodyCompiler context)
           
 void compileVAlias(Node node, BodyCompiler context)
           
 void compileVCall(Node node, BodyCompiler context)
           
 void compileWhen(Node node, BodyCompiler context, boolean hasCase)
           
 void compileWhile(Node node, BodyCompiler context)
           
 void compileXStr(Node node, BodyCompiler context)
           
 void compileYield(Node node, BodyCompiler context)
           
 void compileZArray(Node node, BodyCompiler context)
           
 void compileZSuper(Node node, BodyCompiler context)
           
static void confirmNodeIsSafe(Node node)
          Check whether the target node can safely be compiled.
 ArgumentsCallback getArgsCallback(Node node)
           
static YARVNodesCompiler getYARVCompiler()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ASTCompiler

public ASTCompiler()
Method Detail

compile

public void compile(Node node,
                    BodyCompiler context)

compileArguments

public void compileArguments(Node node,
                             BodyCompiler context)

getArgsCallback

public ArgumentsCallback getArgsCallback(Node node)

compileAssignment

public void compileAssignment(Node node,
                              BodyCompiler context)

getYARVCompiler

public static YARVNodesCompiler getYARVCompiler()

compileAlias

public void compileAlias(Node node,
                         BodyCompiler context)

compileAnd

public void compileAnd(Node node,
                       BodyCompiler context)

compileArray

public void compileArray(Node node,
                         BodyCompiler context)

compileArgsCat

public void compileArgsCat(Node node,
                           BodyCompiler context)

compileArgsPush

public void compileArgsPush(Node node,
                            BodyCompiler context)

compileAttrAssignAssignment

public void compileAttrAssignAssignment(Node node,
                                        BodyCompiler context)

compileBackref

public void compileBackref(Node node,
                           BodyCompiler context)

compileBegin

public void compileBegin(Node node,
                         BodyCompiler context)

compileBignum

public void compileBignum(Node node,
                          BodyCompiler context)

compileBlock

public void compileBlock(Node node,
                         BodyCompiler context)

compileBreak

public void compileBreak(Node node,
                         BodyCompiler context)

compileCall

public void compileCall(Node node,
                        BodyCompiler context)

compileCase

public void compileCase(Node node,
                        BodyCompiler context)

compileFixnumCase

public void compileFixnumCase(Node node,
                              BodyCompiler context)

compileWhen

public void compileWhen(Node node,
                        BodyCompiler context,
                        boolean hasCase)

compileMultiArgWhen

public void compileMultiArgWhen(WhenNode whenNode,
                                ArrayNode expressionsNode,
                                int conditionIndex,
                                BodyCompiler context,
                                boolean hasCase)

compileClass

public void compileClass(Node node,
                         BodyCompiler context)

compileSClass

public void compileSClass(Node node,
                          BodyCompiler context)

compileClassVar

public void compileClassVar(Node node,
                            BodyCompiler context)

compileClassVarAsgn

public void compileClassVarAsgn(Node node,
                                BodyCompiler context)

compileClassVarAsgnAssignment

public void compileClassVarAsgnAssignment(Node node,
                                          BodyCompiler context)

compileClassVarDecl

public void compileClassVarDecl(Node node,
                                BodyCompiler context)

compileClassVarDeclAssignment

public void compileClassVarDeclAssignment(Node node,
                                          BodyCompiler context)

compileConstDecl

public void compileConstDecl(Node node,
                             BodyCompiler context)

compileConstDeclAssignment

public void compileConstDeclAssignment(Node node,
                                       BodyCompiler context)

compileConst

public void compileConst(Node node,
                         BodyCompiler context)

compileColon2

public void compileColon2(Node node,
                          BodyCompiler context)

compileColon3

public void compileColon3(Node node,
                          BodyCompiler context)

compileGetDefinitionBase

public void compileGetDefinitionBase(Node node,
                                     BodyCompiler context)

compileDefined

public void compileDefined(Node node,
                           BodyCompiler context)

compileGetArgumentDefinition

public void compileGetArgumentDefinition(Node node,
                                         BodyCompiler context,
                                         java.lang.String type)

compileGetDefinition

public void compileGetDefinition(Node node,
                                 BodyCompiler context)

compileDAsgn

public void compileDAsgn(Node node,
                         BodyCompiler context)

compileDAsgnAssignment

public void compileDAsgnAssignment(Node node,
                                   BodyCompiler context)

compileDefn

public void compileDefn(Node node,
                        BodyCompiler context)

compileDefs

public void compileDefs(Node node,
                        BodyCompiler context)

compileArgs

public void compileArgs(Node node,
                        BodyCompiler context)

compileDot

public void compileDot(Node node,
                       BodyCompiler context)

compileDRegexp

public void compileDRegexp(Node node,
                           BodyCompiler context)

compileDStr

public void compileDStr(Node node,
                        BodyCompiler context)

compileDSymbol

public void compileDSymbol(Node node,
                           BodyCompiler context)

compileDVar

public void compileDVar(Node node,
                        BodyCompiler context)

compileDXStr

public void compileDXStr(Node node,
                         BodyCompiler context)

compileEnsureNode

public void compileEnsureNode(Node node,
                              BodyCompiler context)

compileEvStr

public void compileEvStr(Node node,
                         BodyCompiler context)

compileFalse

public void compileFalse(Node node,
                         BodyCompiler context)

compileFCall

public void compileFCall(Node node,
                         BodyCompiler context)

compileFixnum

public void compileFixnum(Node node,
                          BodyCompiler context)

compileFlip

public void compileFlip(Node node,
                        BodyCompiler context)

compileFloat

public void compileFloat(Node node,
                         BodyCompiler context)

compileFor

public void compileFor(Node node,
                       BodyCompiler context)

compileForIter

public void compileForIter(Node node,
                           BodyCompiler context)

compileGlobalAsgn

public void compileGlobalAsgn(Node node,
                              BodyCompiler context)

compileGlobalAsgnAssignment

public void compileGlobalAsgnAssignment(Node node,
                                        BodyCompiler context)

compileGlobalVar

public void compileGlobalVar(Node node,
                             BodyCompiler context)

compileHash

public void compileHash(Node node,
                        BodyCompiler context)

compileIf

public void compileIf(Node node,
                      BodyCompiler context)

compileInstAsgn

public void compileInstAsgn(Node node,
                            BodyCompiler context)

compileInstAsgnAssignment

public void compileInstAsgnAssignment(Node node,
                                      BodyCompiler context)

compileInstVar

public void compileInstVar(Node node,
                           BodyCompiler context)

compileIter

public void compileIter(Node node,
                        BodyCompiler context)

compileLocalAsgn

public void compileLocalAsgn(Node node,
                             BodyCompiler context)

compileLocalAsgnAssignment

public void compileLocalAsgnAssignment(Node node,
                                       BodyCompiler context)

compileLocalVar

public void compileLocalVar(Node node,
                            BodyCompiler context)

compileMatch

public void compileMatch(Node node,
                         BodyCompiler context)

compileMatch2

public void compileMatch2(Node node,
                          BodyCompiler context)

compileMatch3

public void compileMatch3(Node node,
                          BodyCompiler context)

compileModule

public void compileModule(Node node,
                          BodyCompiler context)

compileMultipleAsgn

public void compileMultipleAsgn(Node node,
                                BodyCompiler context)

compileMultipleAsgnAssignment

public void compileMultipleAsgnAssignment(Node node,
                                          BodyCompiler context)

compileNewline

public void compileNewline(Node node,
                           BodyCompiler context)

compileNext

public void compileNext(Node node,
                        BodyCompiler context)

compileNthRef

public void compileNthRef(Node node,
                          BodyCompiler context)

compileNil

public void compileNil(Node node,
                       BodyCompiler context)

compileNot

public void compileNot(Node node,
                       BodyCompiler context)

compileOpAsgnAnd

public void compileOpAsgnAnd(Node node,
                             BodyCompiler context)

compileOpAsgnOr

public void compileOpAsgnOr(Node node,
                            BodyCompiler context)

compileOpAsgn

public void compileOpAsgn(Node node,
                          BodyCompiler context)

compileOpAsgnWithOr

public void compileOpAsgnWithOr(Node node,
                                BodyCompiler context)

compileOpAsgnWithAnd

public void compileOpAsgnWithAnd(Node node,
                                 BodyCompiler context)

compileOpAsgnWithMethod

public void compileOpAsgnWithMethod(Node node,
                                    BodyCompiler context)

compileOpElementAsgn

public void compileOpElementAsgn(Node node,
                                 BodyCompiler context)

compileOpElementAsgnWithOr

public void compileOpElementAsgnWithOr(Node node,
                                       BodyCompiler context)

compileOpElementAsgnWithAnd

public void compileOpElementAsgnWithAnd(Node node,
                                        BodyCompiler context)

compileOpElementAsgnWithMethod

public void compileOpElementAsgnWithMethod(Node node,
                                           BodyCompiler context)

compileOr

public void compileOr(Node node,
                      BodyCompiler context)

compilePostExe

public void compilePostExe(Node node,
                           BodyCompiler context)

compilePreExe

public void compilePreExe(Node node,
                          BodyCompiler context)

compileRedo

public void compileRedo(Node node,
                        BodyCompiler context)

compileRegexp

public void compileRegexp(Node node,
                          BodyCompiler context)

compileRescue

public void compileRescue(Node node,
                          BodyCompiler context)

compileRescueBody

public void compileRescueBody(Node node,
                              BodyCompiler context)

compileJavaRescueBody

public void compileJavaRescueBody(Node node,
                                  BodyCompiler context)

compileRetry

public void compileRetry(Node node,
                         BodyCompiler context)

compileReturn

public void compileReturn(Node node,
                          BodyCompiler context)

compileRoot

public void compileRoot(Node node,
                        ScriptCompiler context,
                        ASTInspector inspector)

compileRoot

public void compileRoot(Node node,
                        ScriptCompiler context,
                        ASTInspector inspector,
                        boolean load,
                        boolean main)

compileSelf

public void compileSelf(Node node,
                        BodyCompiler context)

compileSplat

public void compileSplat(Node node,
                         BodyCompiler context)

compileStr

public void compileStr(Node node,
                       BodyCompiler context)

compileSuper

public void compileSuper(Node node,
                         BodyCompiler context)

compileSValue

public void compileSValue(Node node,
                          BodyCompiler context)

compileSymbol

public void compileSymbol(Node node,
                          BodyCompiler context)

compileToAry

public void compileToAry(Node node,
                         BodyCompiler context)

compileTrue

public void compileTrue(Node node,
                        BodyCompiler context)

compileUndef

public void compileUndef(Node node,
                         BodyCompiler context)

compileUntil

public void compileUntil(Node node,
                         BodyCompiler context)

compileVAlias

public void compileVAlias(Node node,
                          BodyCompiler context)

compileVCall

public void compileVCall(Node node,
                         BodyCompiler context)

compileWhile

public void compileWhile(Node node,
                         BodyCompiler context)

compileXStr

public void compileXStr(Node node,
                        BodyCompiler context)

compileYield

public void compileYield(Node node,
                         BodyCompiler context)

compileZArray

public void compileZArray(Node node,
                          BodyCompiler context)

compileZSuper

public void compileZSuper(Node node,
                          BodyCompiler context)

compileArgsCatArguments

public void compileArgsCatArguments(Node node,
                                    BodyCompiler context)

compileArgsPushArguments

public void compileArgsPushArguments(Node node,
                                     BodyCompiler context)

compileArrayArguments

public void compileArrayArguments(Node node,
                                  BodyCompiler context)

compileSplatArguments

public void compileSplatArguments(Node node,
                                  BodyCompiler context)

confirmNodeIsSafe

public static void confirmNodeIsSafe(Node node)
Check whether the target node can safely be compiled.

Parameters:
node -


Copyright © 2002-2007 JRuby Team. All Rights Reserved.