org.jruby.compiler.impl
Class ChainedRootBodyCompiler

java.lang.Object
  extended by org.jruby.compiler.impl.BaseBodyCompiler
      extended by org.jruby.compiler.impl.RootScopedBodyCompiler
          extended by org.jruby.compiler.impl.ChainedRootBodyCompiler
All Implemented Interfaces:
BodyCompiler

public class ChainedRootBodyCompiler
extends RootScopedBodyCompiler


Field Summary
 
Fields inherited from class org.jruby.compiler.impl.BaseBodyCompiler
argParamCount, currentLoopLabels, inNestedMethod, inspector, invocationCompiler, method, methodName, redoJump, rubyName, scope, scopeEnd, scopeStart, script, variableCompiler
 
Constructor Summary
ChainedRootBodyCompiler(StandardASMCompiler scriptCompiler, java.lang.String methodName, java.lang.String rubyName, ASTInspector inspector, StaticScope scope, RootScopedBodyCompiler parent)
           
 
Method Summary
 void endBody()
          End compilation for the method associated with the specified token.
 boolean isSimpleRoot()
          Return true if this method compiled is a "simple" root compiler, i.e.
 
Methods inherited from class org.jruby.compiler.impl.RootScopedBodyCompiler
beginMethod, createVariableCompiler, getSignature, issueBreakEvent, issueNextEvent, issueRedoEvent, outline, performReturn
 
Methods inherited from class org.jruby.compiler.impl.BaseBodyCompiler
aliasGlobal, appendToArray, appendToObjectArray, aprintln, argsCat, argsPush, aryToAry, assignClassVariable, assignClassVariable, assignConstantInCurrent, assignConstantInModule, assignConstantInObject, assignGlobalVariable, assignGlobalVariable, assignInstanceVariable, assignInstanceVariable, asString, attached, backref, backrefMethod, beginChainedMethod, callZSuper, chainToMethod, checkIsExceptionHandled, checkWhenWithSplat, clearErrorInfo, compileSequencedConditional, concatArrays, concatObjectArrays, consumeCurrentValue, convertToJavaArray, createEmptyArray, createEmptyHash, createNewArray, createNewArray, createNewBignum, createNewClosure, createNewClosure19, createNewEndBlock, createNewFixnum, createNewFloat, createNewForLoop, createNewHash, createNewHash19, createNewLambda, createNewLiteralArray, createNewLiteralHash, createNewRange, createNewRegexp, createNewRegexp, createNewString, createNewString, createNewSymbol, createNewSymbol, createObjectArray, createObjectArray, declareClassVariable, declareClassVariable, defineAlias, defineClass, definedCall, definedNot, defineModule, defineNewMethod, duplicateCurrentValue, ensureMultipleAssignableRubyArray, ensureRubyArray, forEachInValueArray, forEachInValueArray, getActualArgsCount, getClosureIndex, getCompiledClass, getDynamicScopeIndex, getExceptionIndex, getFirstTempIndex, getFrameKlazz, getFrameName, getInstanceVariable, getInvocationCompiler, getNativeMethodName, getNewEnding, getNewEnsureName, getNewRescueName, getPreviousExceptionIndex, getRubyName, getScriptCompiler, getVariableCompiler, getVarsArrayIndex, getVisibilityFor, go, hasBlock, ifNotNull, ifNotSuperMethodBound, ifNull, ifSingleton, inDefined, invokeIRubyObject, invokeRuby, invokeThreadContext, invokeUtilityMethod, isCaptured, isClassVarDefined, isConstantBranch, isConstantDefined, isGlobalDefined, isInstanceOf, isInstanceVariableDefined, isMethodBound, isNil, isNotProtected, isNull, isPrivate, issueLoopBreak, issueLoopNext, issueLoopRedo, issueRetryEvent, lineNumber, literal, literalSwitch, loadBlock, loadClass, loadCurrentModule, loadEncoding, loadException, loadFalse, loadFilename, loadNil, loadNull, loadObject, loadRuntime, loadSelf, loadStandardError, loadThis, loadThreadContext, loadTrue, match, match2, match2Capture, match3, metaclass, negateCurrentValue, notIsModuleAndClassVarDefined, nthRef, nullToNil, outDefined, performBackref, performBooleanBranch, performBooleanLoop, performBooleanLoopLight, performBooleanLoopSafe, performEnsure, performLogicalAnd, performLogicalOr, performRescue, performRescueLight, pollThreadEvents, preMultiAssign, println, protect, pushByteList, pushNull, pushString, raiseTypeError, rescue, rethrowException, rethrowIfSystemExit, retrieveClassVariable, retrieveConstant, retrieveConstantFromModule, retrieveConstantFromObject, retrieveGlobalVariable, retrieveInstanceVariable, retrieveSelf, retrieveSelfClass, reverseValues, runBeginBlock, selfIsKindOf, setEnding, setFilePosition, setLinePosition, shouldUseBoxedArgs, singlifySplattedValue, singlifySplattedValue19, splatCurrentValue, storeExceptionInErrorInfo, stringOrNil, superClass, swapValues, toJavaString, traceClass, traceEnd, traceLine, typeCheckBranch, undefMethod, unwrapPassedBlock, unwrapRaiseException, wrapJavaException, wrapJavaObject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ChainedRootBodyCompiler

public ChainedRootBodyCompiler(StandardASMCompiler scriptCompiler,
                               java.lang.String methodName,
                               java.lang.String rubyName,
                               ASTInspector inspector,
                               StaticScope scope,
                               RootScopedBodyCompiler parent)
Method Detail

endBody

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

Specified by:
endBody in interface BodyCompiler
Overrides:
endBody in class RootScopedBodyCompiler

isSimpleRoot

public boolean isSimpleRoot()
Description copied from interface: BodyCompiler
Return true if this method compiled is a "simple" root compiler, i.e. not chained and not a block/closure.

Returns:


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