org.jruby.compiler.impl
Class HeapBasedVariableCompiler

java.lang.Object
  extended by org.jruby.compiler.impl.AbstractVariableCompiler
      extended by org.jruby.compiler.impl.HeapBasedVariableCompiler
All Implemented Interfaces:
VariableCompiler

public class HeapBasedVariableCompiler
extends AbstractVariableCompiler

Author:
headius

Field Summary
 
Fields inherited from class org.jruby.compiler.impl.AbstractVariableCompiler
argsIndex, arity, method, methodCompiler, scope, specificArity, tempVariableIndex
 
Constructor Summary
HeapBasedVariableCompiler(BaseBodyCompiler methodCompiler, SkinnyMethodAdapter method, StaticScope scope, boolean specificArity, int argsIndex, int firstTempIndex)
           
 
Method Summary
 void assignLocalVariable(int index, boolean expr)
           
 void assignLocalVariable(int index, CompilerCallback value, boolean expr)
           
 void assignLocalVariable(int index, int depth, boolean expr)
           
 void assignLocalVariable(int index, int depth, CompilerCallback value, boolean expr)
           
 void beginClass(CompilerCallback bodyPrep, StaticScope scope)
           
 void beginClosure(CompilerCallback argsCallback, StaticScope scope)
           
 void beginFlatClosure(CompilerCallback argsCallback, StaticScope scope)
           
 void beginMethod(CompilerCallback argsCallback, StaticScope scope)
           
 void declareLocals(StaticScope scope, Label start, Label end)
           
 void retrieveLocalVariable(int index)
           
 void retrieveLocalVariable(int index, int depth)
           
 
Methods inherited from class org.jruby.compiler.impl.AbstractVariableCompiler
assignBackRef, assignBackRef, assignHeapLocal, assignHeapLocal, assignLastLine, assignLastLine, assignMethodArguments, assignMethodArguments19, checkMethodArity, getMethodAdapter, getTempLocal, grabTempLocal, releaseTempLocal, retrieveBackRef, retrieveHeapLocal, retrieveLastLine, setMethodAdapter, setTempLocal, unwrapParentScopes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HeapBasedVariableCompiler

public HeapBasedVariableCompiler(BaseBodyCompiler methodCompiler,
                                 SkinnyMethodAdapter method,
                                 StaticScope scope,
                                 boolean specificArity,
                                 int argsIndex,
                                 int firstTempIndex)
Method Detail

beginMethod

public void beginMethod(CompilerCallback argsCallback,
                        StaticScope scope)

declareLocals

public void declareLocals(StaticScope scope,
                          Label start,
                          Label end)

beginClass

public void beginClass(CompilerCallback bodyPrep,
                       StaticScope scope)

beginClosure

public void beginClosure(CompilerCallback argsCallback,
                         StaticScope scope)

beginFlatClosure

public void beginFlatClosure(CompilerCallback argsCallback,
                             StaticScope scope)

assignLocalVariable

public void assignLocalVariable(int index,
                                boolean expr)

assignLocalVariable

public void assignLocalVariable(int index,
                                CompilerCallback value,
                                boolean expr)

assignLocalVariable

public void assignLocalVariable(int index,
                                int depth,
                                boolean expr)

assignLocalVariable

public void assignLocalVariable(int index,
                                int depth,
                                CompilerCallback value,
                                boolean expr)

retrieveLocalVariable

public void retrieveLocalVariable(int index)

retrieveLocalVariable

public void retrieveLocalVariable(int index,
                                  int depth)


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