public abstract class AbstractVariableCompiler extends Object implements VariableCompiler
Modifier and Type | Field and Description |
---|---|
protected int |
argsIndex |
protected Arity |
arity |
protected SkinnyMethodAdapter |
method |
protected BaseBodyCompiler |
methodCompiler |
protected StaticScope |
scope |
protected boolean |
specificArity |
protected int |
tempVariableIndex |
Constructor and Description |
---|
AbstractVariableCompiler(BaseBodyCompiler methodCompiler,
SkinnyMethodAdapter method,
StaticScope scope,
boolean specificArity,
int argsIndex,
int firstTempIndex) |
Modifier and Type | Method and Description |
---|---|
void |
assignBackRef() |
void |
assignBackRef(CompilerCallback value) |
void |
assignClosureArguments(CompilerCallback masgnCallback,
CompilerCallback blockAssignment) |
protected void |
assignHeapLocal(CompilerCallback value,
int depth,
int index,
boolean expr) |
protected void |
assignHeapLocal(int depth,
int index,
boolean expr) |
void |
assignLastLine() |
void |
assignLastLine(CompilerCallback value) |
void |
assignMethodArguments(Object requiredArgs,
int requiredArgsCount,
Object optArgs,
int optArgsCount,
ArrayCallback requiredAssignment,
ArrayCallback optGivenAssignment,
ArrayCallback optNotGivenAssignment,
CompilerCallback restAssignment,
CompilerCallback blockAssignment) |
void |
assignMethodArguments19(Object preArgs,
int preArgsCount,
Object postArgs,
int postArgsCount,
int postArgsIndex,
Object optArgs,
int optArgsCount,
ArrayCallback requiredAssignment,
ArrayCallback optGivenAssignment,
ArrayCallback optNotGivenAssignment,
CompilerCallback restAssignment,
CompilerCallback blockAssignment) |
void |
checkMethodArity(int requiredArgs,
int optArgs,
int restArg) |
SkinnyMethodAdapter |
getMethodAdapter() |
void |
getTempLocal(int index) |
int |
grabTempLocal() |
boolean |
isHeap() |
void |
releaseTempLocal() |
void |
retrieveBackRef() |
protected void |
retrieveHeapLocal(int depth,
int index) |
void |
retrieveLastLine() |
void |
setMethodAdapter(SkinnyMethodAdapter sma) |
void |
setTempLocal(int index) |
protected void |
unwrapParentScopes(int depth) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
assignLocalVariable, assignLocalVariable, assignLocalVariable, beginClass, beginClosure, beginFlatClosure, beginMethod, declareLocals, retrieveLocalVariable, retrieveLocalVariable
protected SkinnyMethodAdapter method
protected BaseBodyCompiler methodCompiler
protected int argsIndex
protected int tempVariableIndex
protected Arity arity
protected StaticScope scope
protected boolean specificArity
public AbstractVariableCompiler(BaseBodyCompiler methodCompiler, SkinnyMethodAdapter method, StaticScope scope, boolean specificArity, int argsIndex, int firstTempIndex)
public SkinnyMethodAdapter getMethodAdapter()
getMethodAdapter
in interface VariableCompiler
public void setMethodAdapter(SkinnyMethodAdapter sma)
setMethodAdapter
in interface VariableCompiler
public void assignLastLine()
assignLastLine
in interface VariableCompiler
public void assignLastLine(CompilerCallback value)
assignLastLine
in interface VariableCompiler
public void retrieveLastLine()
retrieveLastLine
in interface VariableCompiler
public void assignBackRef()
assignBackRef
in interface VariableCompiler
public void assignBackRef(CompilerCallback value)
assignBackRef
in interface VariableCompiler
public void retrieveBackRef()
retrieveBackRef
in interface VariableCompiler
public void checkMethodArity(int requiredArgs, int optArgs, int restArg)
checkMethodArity
in interface VariableCompiler
public void assignMethodArguments(Object requiredArgs, int requiredArgsCount, Object optArgs, int optArgsCount, ArrayCallback requiredAssignment, ArrayCallback optGivenAssignment, ArrayCallback optNotGivenAssignment, CompilerCallback restAssignment, CompilerCallback blockAssignment)
assignMethodArguments
in interface VariableCompiler
public void assignMethodArguments19(Object preArgs, int preArgsCount, Object postArgs, int postArgsCount, int postArgsIndex, Object optArgs, int optArgsCount, ArrayCallback requiredAssignment, ArrayCallback optGivenAssignment, ArrayCallback optNotGivenAssignment, CompilerCallback restAssignment, CompilerCallback blockAssignment)
assignMethodArguments19
in interface VariableCompiler
public void assignClosureArguments(CompilerCallback masgnCallback, CompilerCallback blockAssignment)
assignClosureArguments
in interface VariableCompiler
public int grabTempLocal()
grabTempLocal
in interface VariableCompiler
public void setTempLocal(int index)
setTempLocal
in interface VariableCompiler
public void getTempLocal(int index)
getTempLocal
in interface VariableCompiler
public void releaseTempLocal()
releaseTempLocal
in interface VariableCompiler
public boolean isHeap()
isHeap
in interface VariableCompiler
protected void assignHeapLocal(CompilerCallback value, int depth, int index, boolean expr)
protected void assignHeapLocal(int depth, int index, boolean expr)
protected void retrieveHeapLocal(int depth, int index)
protected void unwrapParentScopes(int depth)
Copyright © 2001-2013 JRuby. All Rights Reserved.