org.jruby.compiler
Interface InvocationCompiler

All Known Implementing Classes:
StandardInvocationCompiler

public interface InvocationCompiler

Author:
headius

Method Summary
 SkinnyMethodAdapter getMethodAdapter()
           
 void invokeAttrAssign(java.lang.String name)
          Attr assign calls have slightly different semantics that normal calls, so this method handles those additional semantics.
 void invokeAttrAssign(java.lang.String name, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
           
 void invokeDynamic(java.lang.String name, CompilerCallback receiverCallback, ArgumentsCallback argsCallback, CallType callType, CompilerCallback closureArg)
          Invoke the named method as a "function", i.e.
 void invokeEqq()
          Used for when nodes with a case; assumes stack is ..., case_value, when_cond_array
 void invokeOpAsgnWithAnd(java.lang.String attrName, java.lang.String attrAsgnName, CompilerCallback receiverCallback, ArgumentsCallback argsCallback)
           
 void invokeOpAsgnWithMethod(java.lang.String opName, 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 invokeSuper(CompilerCallback argsCallback, CompilerCallback closureCallback)
           
 void opElementAsgn(CompilerCallback valueCallback, java.lang.String operator)
           
 void opElementAsgnWithAnd(CompilerCallback receiverCallback, ArgumentsCallback argsCallback, CompilerCallback valueCallback)
           
 void opElementAsgnWithMethod(CompilerCallback receiverCallback, ArgumentsCallback argsCallback, CompilerCallback valueCallback, java.lang.String operator)
           
 void opElementAsgnWithOr(CompilerCallback receiverCallback, ArgumentsCallback argsCallback, CompilerCallback valueCallback)
           
 void setMethodAdapter(SkinnyMethodAdapter sma)
           
 void yield(boolean hasArgs, boolean unwrap)
          Invoke the block passed into this method, or throw an error if no block is present.
 

Method Detail

getMethodAdapter

SkinnyMethodAdapter getMethodAdapter()

setMethodAdapter

void setMethodAdapter(SkinnyMethodAdapter sma)

invokeDynamic

void invokeDynamic(java.lang.String name,
                   CompilerCallback receiverCallback,
                   ArgumentsCallback argsCallback,
                   CallType callType,
                   CompilerCallback closureArg)
Invoke the named method as a "function", i.e. as a method on the current "self" object, using the specified argument count. It is expected that previous calls to the compiler has prepared the exact number of argument values necessary for this call. Those values will be consumed, and the result of the call will be generated.


invokeOpAsgnWithOr

void invokeOpAsgnWithOr(java.lang.String attrName,
                        java.lang.String attrAsgnName,
                        CompilerCallback receiverCallback,
                        ArgumentsCallback argsCallback)

invokeOpAsgnWithAnd

void invokeOpAsgnWithAnd(java.lang.String attrName,
                         java.lang.String attrAsgnName,
                         CompilerCallback receiverCallback,
                         ArgumentsCallback argsCallback)

invokeOpAsgnWithMethod

void invokeOpAsgnWithMethod(java.lang.String opName,
                            java.lang.String attrName,
                            java.lang.String attrAsgnName,
                            CompilerCallback receiverCallback,
                            ArgumentsCallback argsCallback)

invokeSuper

void invokeSuper(CompilerCallback argsCallback,
                 CompilerCallback closureCallback)

invokeAttrAssign

void invokeAttrAssign(java.lang.String name)
Attr assign calls have slightly different semantics that normal calls, so this method handles those additional semantics.


invokeAttrAssign

void invokeAttrAssign(java.lang.String name,
                      CompilerCallback receiverCallback,
                      ArgumentsCallback argsCallback)

opElementAsgn

void opElementAsgn(CompilerCallback valueCallback,
                   java.lang.String operator)

opElementAsgnWithOr

void opElementAsgnWithOr(CompilerCallback receiverCallback,
                         ArgumentsCallback argsCallback,
                         CompilerCallback valueCallback)

opElementAsgnWithAnd

void opElementAsgnWithAnd(CompilerCallback receiverCallback,
                          ArgumentsCallback argsCallback,
                          CompilerCallback valueCallback)

opElementAsgnWithMethod

void opElementAsgnWithMethod(CompilerCallback receiverCallback,
                             ArgumentsCallback argsCallback,
                             CompilerCallback valueCallback,
                             java.lang.String operator)

yield

void yield(boolean hasArgs,
           boolean unwrap)
Invoke the block passed into this method, or throw an error if no block is present. If arguments have been prepared for the block, specify true. Otherwise the default empty args will be used.


invokeEqq

void invokeEqq()
Used for when nodes with a case; assumes stack is ..., case_value, when_cond_array



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