|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jruby.compiler.impl.StandardInvocationCompiler
public class StandardInvocationCompiler
Field Summary | |
---|---|
protected SkinnyMethodAdapter |
method
|
protected BaseBodyCompiler |
methodCompiler
|
Constructor Summary | |
---|---|
StandardInvocationCompiler(BaseBodyCompiler methodCompiler,
SkinnyMethodAdapter method)
|
Method Summary | |
---|---|
SkinnyMethodAdapter |
getMethodAdapter()
|
void |
invokeAttrAssign(java.lang.String name,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
|
void |
invokeAttrAssignMasgn(java.lang.String name,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
The masgn version has the value to be assigned already on the stack, and so uses a different path to perform the assignment. |
void |
invokeBinaryFixnumRHS(java.lang.String name,
CompilerCallback receiverCallback,
long fixnum)
|
void |
invokeBinaryFloatRHS(java.lang.String name,
CompilerCallback receiverCallback,
double flote)
|
void |
invokeDynamic(java.lang.String name,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback,
CallType callType,
CompilerCallback closureArg,
boolean iterator)
Invoke the named method as a "function", i.e. |
void |
invokeDynamicNoBlockSpecificArity(java.lang.String name,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
|
void |
invokeDynamicNoBlockZero(java.lang.String name,
CompilerCallback receiverCallback)
|
void |
invokeDynamicSelfNoBlockSpecificArity(java.lang.String name,
ArgumentsCallback argsCallback)
|
void |
invokeDynamicSelfNoBlockZero(java.lang.String name)
|
void |
invokeEqq(ArgumentsCallback receivers,
CompilerCallback argument)
Used for when nodes with a case; assumes stack is ..., case_value, when_cond_array |
void |
invokeFixnumLong(java.lang.String rubyName,
int moduleGeneration,
CompilerCallback receiverCallback,
java.lang.String methodName,
long fixnum)
|
void |
invokeFloatDouble(java.lang.String rubyName,
int moduleGeneration,
CompilerCallback receiverCallback,
java.lang.String methodName,
double flote)
|
void |
invokeNative(java.lang.String name,
DynamicMethod.NativeCall nativeCall,
int moduleGeneration,
CompilerCallback receiver,
ArgumentsCallback args,
CompilerCallback closure,
CallType callType,
boolean iterator)
|
void |
invokeOpAsgnWithAnd(java.lang.String attrName,
java.lang.String attrAsgnName,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
|
void |
invokeOpAsgnWithMethod(java.lang.String operatorName,
java.lang.String attrName,
java.lang.String attrAsgnName,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
|
void |
invokeOpAsgnWithOr(java.lang.String attrName,
java.lang.String attrAsgnName,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
|
void |
invokeOpElementAsgnWithMethod(java.lang.String operatorName,
CompilerCallback receiverCallback,
ArgumentsCallback argsCallback)
|
void |
invokeRecursive(java.lang.String name,
int moduleGeneration,
ArgumentsCallback argsCallback,
CompilerCallback closure,
CallType callType,
boolean iterator)
|
void |
invokeTrivial(java.lang.String name,
int moduleGeneration,
CompilerCallback body)
|
void |
opElementAsgnWithAnd(CompilerCallback receiver,
ArgumentsCallback args,
CompilerCallback valueCallback)
|
void |
opElementAsgnWithMethod(CompilerCallback receiver,
ArgumentsCallback args,
CompilerCallback valueCallback,
java.lang.String operator)
|
void |
opElementAsgnWithOr(CompilerCallback receiver,
ArgumentsCallback args,
CompilerCallback valueCallback)
|
void |
setMethodAdapter(SkinnyMethodAdapter sma)
|
void |
yield(CompilerCallback argsCallback,
boolean unwrap)
Invoke the block passed into this method, or throw an error if no block is present. |
void |
yieldSpecific(ArgumentsCallback argsCallback)
Invoke the block passed into this method, or throw an error if no block is present. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected BaseBodyCompiler methodCompiler
protected SkinnyMethodAdapter method
Constructor Detail |
---|
public StandardInvocationCompiler(BaseBodyCompiler methodCompiler, SkinnyMethodAdapter method)
Method Detail |
---|
public SkinnyMethodAdapter getMethodAdapter()
getMethodAdapter
in interface InvocationCompiler
public void setMethodAdapter(SkinnyMethodAdapter sma)
setMethodAdapter
in interface InvocationCompiler
public void invokeAttrAssignMasgn(java.lang.String name, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
InvocationCompiler
invokeAttrAssignMasgn
in interface InvocationCompiler
public void invokeAttrAssign(java.lang.String name, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
invokeAttrAssign
in interface InvocationCompiler
public void opElementAsgnWithOr(CompilerCallback receiver, ArgumentsCallback args, CompilerCallback valueCallback)
opElementAsgnWithOr
in interface InvocationCompiler
public void opElementAsgnWithAnd(CompilerCallback receiver, ArgumentsCallback args, CompilerCallback valueCallback)
opElementAsgnWithAnd
in interface InvocationCompiler
public void opElementAsgnWithMethod(CompilerCallback receiver, ArgumentsCallback args, CompilerCallback valueCallback, java.lang.String operator)
opElementAsgnWithMethod
in interface InvocationCompiler
public void invokeBinaryFixnumRHS(java.lang.String name, CompilerCallback receiverCallback, long fixnum)
invokeBinaryFixnumRHS
in interface InvocationCompiler
public void invokeBinaryFloatRHS(java.lang.String name, CompilerCallback receiverCallback, double flote)
invokeBinaryFloatRHS
in interface InvocationCompiler
public void invokeFixnumLong(java.lang.String rubyName, int moduleGeneration, CompilerCallback receiverCallback, java.lang.String methodName, long fixnum)
invokeFixnumLong
in interface InvocationCompiler
public void invokeFloatDouble(java.lang.String rubyName, int moduleGeneration, CompilerCallback receiverCallback, java.lang.String methodName, double flote)
invokeFloatDouble
in interface InvocationCompiler
public void invokeRecursive(java.lang.String name, int moduleGeneration, ArgumentsCallback argsCallback, CompilerCallback closure, CallType callType, boolean iterator)
invokeRecursive
in interface InvocationCompiler
public void invokeNative(java.lang.String name, DynamicMethod.NativeCall nativeCall, int moduleGeneration, CompilerCallback receiver, ArgumentsCallback args, CompilerCallback closure, CallType callType, boolean iterator)
invokeNative
in interface InvocationCompiler
public void invokeTrivial(java.lang.String name, int moduleGeneration, CompilerCallback body)
invokeTrivial
in interface InvocationCompiler
public void invokeDynamic(java.lang.String name, CompilerCallback receiverCallback, ArgumentsCallback argsCallback, CallType callType, CompilerCallback closureArg, boolean iterator)
InvocationCompiler
invokeDynamic
in interface InvocationCompiler
public void invokeDynamicSelfNoBlockZero(java.lang.String name)
public void invokeDynamicSelfNoBlockSpecificArity(java.lang.String name, ArgumentsCallback argsCallback)
public void invokeDynamicNoBlockZero(java.lang.String name, CompilerCallback receiverCallback)
public void invokeDynamicNoBlockSpecificArity(java.lang.String name, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
public void invokeOpAsgnWithOr(java.lang.String attrName, java.lang.String attrAsgnName, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
invokeOpAsgnWithOr
in interface InvocationCompiler
public void invokeOpAsgnWithAnd(java.lang.String attrName, java.lang.String attrAsgnName, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
invokeOpAsgnWithAnd
in interface InvocationCompiler
public void invokeOpAsgnWithMethod(java.lang.String operatorName, java.lang.String attrName, java.lang.String attrAsgnName, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
invokeOpAsgnWithMethod
in interface InvocationCompiler
public void invokeOpElementAsgnWithMethod(java.lang.String operatorName, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
public void yield(CompilerCallback argsCallback, boolean unwrap)
InvocationCompiler
yield
in interface InvocationCompiler
public void yieldSpecific(ArgumentsCallback argsCallback)
InvocationCompiler
yieldSpecific
in interface InvocationCompiler
public void invokeEqq(ArgumentsCallback receivers, CompilerCallback argument)
InvocationCompiler
invokeEqq
in interface InvocationCompiler
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |