org.jruby.compiler.impl
Class StandardASMCompiler.ASMMethodCompiler

java.lang.Object
  extended by org.jruby.compiler.impl.StandardASMCompiler.AbstractMethodCompiler
      extended by org.jruby.compiler.impl.StandardASMCompiler.ASMMethodCompiler
All Implemented Interfaces:
MethodCompiler
Direct Known Subclasses:
StandardASMCompiler.AbstractMethodCompiler.ASMMethodContinuationCompiler
Enclosing class:
StandardASMCompiler

public class StandardASMCompiler.ASMMethodCompiler
extends StandardASMCompiler.AbstractMethodCompiler


Nested Class Summary
 
Nested classes/interfaces inherited from class org.jruby.compiler.impl.StandardASMCompiler.AbstractMethodCompiler
StandardASMCompiler.AbstractMethodCompiler.ASMMethodContinuationCompiler
 
Field Summary
 
Fields inherited from class org.jruby.compiler.impl.StandardASMCompiler.AbstractMethodCompiler
argParamCount, currentLoopLabels, inspector, invocationCompiler, method, methodName, redoJump, scope, scopeEnd, scopeStart, variableCompiler, withinProtection
 
Constructor Summary
StandardASMCompiler.ASMMethodCompiler(java.lang.String friendlyName, ASTInspector inspector, StaticScope scope)
           
 
Method Summary
 void beginChainedMethod()
           
 void beginClass(CompilerCallback bodyPrep, StaticScope scope)
           
 void beginMethod(CompilerCallback args, StaticScope scope)
           
protected  void createVariableCompiler()
           
 void endMethod()
          End compilation for the method associated with the specified token.
protected  java.lang.String getSignature()
           
 void issueBreakEvent(CompilerCallback value)
           
 void issueNextEvent(CompilerCallback value)
           
 void issueRedoEvent()
           
 void performReturn()
          Return the current value on the top of the stack, taking into consideration surrounding blocks.
 
Methods inherited from class org.jruby.compiler.impl.StandardASMCompiler.AbstractMethodCompiler
aliasGlobal, appendToArray, appendToObjectArray, aprintln, aryToAry, assignClassVariable, assignClassVariable, assignConstantInCurrent, assignConstantInModule, assignConstantInObject, assignGlobalVariable, assignGlobalVariable, assignInstanceVariable, assignInstanceVariable, asString, attached, backref, backrefMethod, branchIfModule, callZSuper, chainToMethod, checkIsExceptionHandled, checkWhenWithSplat, concatArrays, concatObjectArrays, consumeCurrentValue, convertToJavaArray, createEmptyArray, createEmptyHash, createNewArray, createNewArray, createNewBignum, createNewClosure, createNewEndBlock, createNewFixnum, createNewFloat, createNewForLoop, createNewHash, createNewRange, createNewRegexp, createNewString, createNewString, createNewSymbol, createNewSymbol, createObjectArray, createObjectArray, declareClassVariable, declareClassVariable, defineAlias, defineClass, defineModule, defineNewMethod, duplicateCurrentValue, ensureMultipleAssignableRubyArray, ensureRubyArray, forEachInValueArray, getClosureIndex, getCompiledClass, getDynamicScopeIndex, getExceptionIndex, getFirstTempIndex, getFrameKlazz, getFrameName, getInstanceVariable, getInvocationCompiler, getNewEnding, getNewEnsureName, getNewRescueName, getNilIndex, getPreviousExceptionIndex, getRuntimeIndex, getScriptCompiler, getVariableCompiler, getVarsArrayIndex, getVisibilityFor, go, hasBlock, ifNotNull, ifNotSuperMethodBound, ifNull, ifSingleton, inDefined, invokeIRuby, invokeIRubyObject, invokeThreadContext, invokeUtilityMethod, isCaptured, isClassVarDefined, isConstantBranch, isConstantDefined, isGlobalDefined, isInstanceOf, isInstanceVariableDefined, isMethodBound, isNil, isNotProtected, isNull, isPrivate, issueLoopBreak, issueLoopNext, issueLoopRedo, issueRetryEvent, lineNumber, loadBlock, loadClass, loadCurrentModule, loadException, loadFalse, loadNil, loadNull, loadObject, loadRuntime, loadSelf, loadSymbol, loadThis, loadThreadContext, loadTrue, match, match2, match3, metaclass, negateCurrentValue, notIsModuleAndClassVarDefined, nthRef, nullToNil, outDefined, outline, performBackref, performBooleanBranch, performBooleanLoop, performBooleanLoopLight, performBooleanLoopSafe, performLogicalAnd, performLogicalOr, pollThreadEvents, println, protect, pushNull, pushString, rescue, rethrowException, rethrowIfSystemExit, retrieveClassVariable, retrieveConstant, retrieveConstantFromModule, retrieveGlobalVariable, retrieveInstanceVariable, retrieveSelf, retrieveSelfClass, runBeginBlock, selfIsKindOf, setEnding, setFilePosition, setLinePosition, singlifySplattedValue, splatCurrentValue, stringOrNil, superClass, swapValues, toJavaString, undefMethod, unwrapPassedBlock, unwrapRaiseException
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StandardASMCompiler.ASMMethodCompiler

public StandardASMCompiler.ASMMethodCompiler(java.lang.String friendlyName,
                                             ASTInspector inspector,
                                             StaticScope scope)
Method Detail

getSignature

protected java.lang.String getSignature()
Specified by:
getSignature in class StandardASMCompiler.AbstractMethodCompiler

createVariableCompiler

protected void createVariableCompiler()
Specified by:
createVariableCompiler in class StandardASMCompiler.AbstractMethodCompiler

beginChainedMethod

public void beginChainedMethod()

beginMethod

public void beginMethod(CompilerCallback args,
                        StaticScope scope)
Specified by:
beginMethod in class StandardASMCompiler.AbstractMethodCompiler

beginClass

public void beginClass(CompilerCallback bodyPrep,
                       StaticScope scope)

endMethod

public void endMethod()
Description copied from interface: MethodCompiler
End compilation for the method associated with the specified token. This should close out all structures created for compilation of the method.

Specified by:
endMethod in interface MethodCompiler
Specified by:
endMethod in class StandardASMCompiler.AbstractMethodCompiler

performReturn

public void performReturn()
Description copied from interface: MethodCompiler
Return the current value on the top of the stack, taking into consideration surrounding blocks.


issueBreakEvent

public void issueBreakEvent(CompilerCallback value)

issueNextEvent

public void issueNextEvent(CompilerCallback value)

issueRedoEvent

public void issueRedoEvent()


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