org.jruby.internal.runtime.methods
Class CompiledMethod

java.lang.Object
  extended by org.jruby.internal.runtime.methods.DynamicMethod
      extended by org.jruby.internal.runtime.methods.JavaMethod
          extended by org.jruby.internal.runtime.methods.CompiledMethod
All Implemented Interfaces:
java.lang.Cloneable, MethodArgs2, PositionAware
Direct Known Subclasses:
ReflectedCompiledMethod

public abstract class CompiledMethod
extends JavaMethod
implements java.lang.Cloneable, PositionAware, MethodArgs2


Nested Class Summary
static class CompiledMethod.LazyCompiledMethod
           
 
Nested classes/interfaces inherited from class org.jruby.internal.runtime.methods.JavaMethod
JavaMethod.JavaMethodN, JavaMethod.JavaMethodNBlock, JavaMethod.JavaMethodOne, JavaMethod.JavaMethodOneBlock, JavaMethod.JavaMethodOneOrN, JavaMethod.JavaMethodOneOrNBlock, JavaMethod.JavaMethodOneOrTwo, JavaMethod.JavaMethodOneOrTwoBlock, JavaMethod.JavaMethodOneOrTwoOrN, JavaMethod.JavaMethodOneOrTwoOrNBlock, JavaMethod.JavaMethodOneOrTwoOrThree, JavaMethod.JavaMethodOneOrTwoOrThreeBlock, JavaMethod.JavaMethodOneOrTwoOrThreeOrN, JavaMethod.JavaMethodOneOrTwoOrThreeOrNBlock, JavaMethod.JavaMethodThree, JavaMethod.JavaMethodThreeBlock, JavaMethod.JavaMethodThreeOrN, JavaMethod.JavaMethodThreeOrNBlock, JavaMethod.JavaMethodTwo, JavaMethod.JavaMethodTwoBlock, JavaMethod.JavaMethodTwoOrN, JavaMethod.JavaMethodTwoOrNBlock, JavaMethod.JavaMethodTwoOrThree, JavaMethod.JavaMethodTwoOrThreeBlock, JavaMethod.JavaMethodTwoOrThreeOrN, JavaMethod.JavaMethodTwoOrThreeOrNBlock, JavaMethod.JavaMethodZero, JavaMethod.JavaMethodZeroBlock, JavaMethod.JavaMethodZeroOrN, JavaMethod.JavaMethodZeroOrNBlock, JavaMethod.JavaMethodZeroOrOne, JavaMethod.JavaMethodZeroOrOneBlock, JavaMethod.JavaMethodZeroOrOneOrN, JavaMethod.JavaMethodZeroOrOneOrNBlock, JavaMethod.JavaMethodZeroOrOneOrTwo, JavaMethod.JavaMethodZeroOrOneOrTwoBlock, JavaMethod.JavaMethodZeroOrOneOrTwoOrN, JavaMethod.JavaMethodZeroOrOneOrTwoOrNBlock, JavaMethod.JavaMethodZeroOrOneOrTwoOrThree, JavaMethod.JavaMethodZeroOrOneOrTwoOrThreeBlock, JavaMethod.JavaMethodZeroOrOneOrTwoOrThreeOrN, JavaMethod.JavaMethodZeroOrOneOrTwoOrThreeOrNBlock
 
Nested classes/interfaces inherited from class org.jruby.internal.runtime.methods.DynamicMethod
DynamicMethod.NativeCall
 
Field Summary
protected  java.lang.Object $scriptObject
           
protected  java.lang.String[] parameterList
           
protected  ISourcePosition position
           
 
Fields inherited from class org.jruby.internal.runtime.methods.JavaMethod
arity, arityValue, BLOCK_METHODS, BLOCK_REST_METHODS, METHODS, REST_METHODS, staticScope
 
Fields inherited from class org.jruby.internal.runtime.methods.DynamicMethod
builtin, callConfig, implementationClass, name, nativeCall, notImplemented, protectedClass, serialNumber, visibility
 
Constructor Summary
protected CompiledMethod()
           
 
Method Summary
 IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, java.lang.String name)
          Arity 0, no block
 IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, java.lang.String name, IRubyObject arg)
          Arity 1, no block
 IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2)
          Arity 2, no block
 IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3)
          Arity 3, no block
 DynamicMethod dup()
          Duplicate this method, returning DynamicMethod referencing the same code and with the same attributes.
 java.lang.String getFile()
          Get the filename for the method.
 int getLine()
          Get the line number for the method.
 java.lang.String[] getParameterList()
           
 java.lang.Object getScriptObject()
           
protected  void init(RubyModule implementationClass, Arity arity, Visibility visibility, StaticScope staticScope, java.lang.Object scriptObject, CallConfiguration callConfig, ISourcePosition position, java.lang.String parameterDesc)
           
 boolean isNative()
          Returns true if this method is backed by native (i.e.
 
Methods inherited from class org.jruby.internal.runtime.methods.JavaMethod
callTrace, callTraceCompiled, checkArgumentCount, getArity, getJavaName, init, isSingleton, postBacktraceAndScope, postBacktraceDummyScope, postBacktraceOnly, postFrameAndScope, postFrameOnly, postNoFrameDummyScope, postNoop, postScopeOnly, preBacktraceAndScope, preBacktraceDummyScope, preBacktraceOnly, preFrameAndDummyScope, preFrameAndScope, preFrameOnly, preNoFrameDummyScope, preNoop, preScopeOnly, raiseArgumentError, returnTrace, returnTraceCompiled, setArity, setJavaName, setSingleton
 
Methods inherited from class org.jruby.internal.runtime.methods.DynamicMethod
calculateProtectedClass, call, call, call, call, call, call, call, call, call, call, call, call, call, call, call, call, call, call, call, call, getCallConfig, getImplementationClass, getName, getNativeCall, getProtectedClass, getRealMethod, getSerialNumber, getVisibility, handleBreak, handleRedo, handleReturn, init, isBuiltin, isCallableFrom, isNotImplemented, isUndefined, setCallConfig, setImplementationClass, setIsBuiltin, setName, setNativeCall, setNotImplemented, setVisibility
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

$scriptObject

protected java.lang.Object $scriptObject

position

protected ISourcePosition position

parameterList

protected java.lang.String[] parameterList
Constructor Detail

CompiledMethod

protected CompiledMethod()
Method Detail

init

protected void init(RubyModule implementationClass,
                    Arity arity,
                    Visibility visibility,
                    StaticScope staticScope,
                    java.lang.Object scriptObject,
                    CallConfiguration callConfig,
                    ISourcePosition position,
                    java.lang.String parameterDesc)

call

public IRubyObject call(ThreadContext context,
                        IRubyObject self,
                        RubyModule clazz,
                        java.lang.String name)
Description copied from class: DynamicMethod
Arity 0, no block

Overrides:
call in class DynamicMethod

call

public IRubyObject call(ThreadContext context,
                        IRubyObject self,
                        RubyModule clazz,
                        java.lang.String name,
                        IRubyObject arg)
Description copied from class: DynamicMethod
Arity 1, no block

Overrides:
call in class DynamicMethod

call

public IRubyObject call(ThreadContext context,
                        IRubyObject self,
                        RubyModule clazz,
                        java.lang.String name,
                        IRubyObject arg1,
                        IRubyObject arg2)
Description copied from class: DynamicMethod
Arity 2, no block

Overrides:
call in class DynamicMethod

call

public IRubyObject call(ThreadContext context,
                        IRubyObject self,
                        RubyModule clazz,
                        java.lang.String name,
                        IRubyObject arg1,
                        IRubyObject arg2,
                        IRubyObject arg3)
Description copied from class: DynamicMethod
Arity 3, no block

Overrides:
call in class DynamicMethod

dup

public DynamicMethod dup()
Description copied from class: DynamicMethod
Duplicate this method, returning DynamicMethod referencing the same code and with the same attributes. It is not required that this method produce a new object if the semantics of the DynamicMethod subtype do not require such.

Overrides:
dup in class JavaMethod
Returns:
An identical DynamicMethod object to the target.

isNative

public boolean isNative()
Description copied from class: DynamicMethod
Returns true if this method is backed by native (i.e. Java) code.

Overrides:
isNative in class JavaMethod
Returns:
true If backed by Java code or JVM bytecode; false otherwise

getFile

public java.lang.String getFile()
Description copied from interface: PositionAware
Get the filename for the method.

Specified by:
getFile in interface PositionAware
Returns:
the filename for the method

getLine

public int getLine()
Description copied from interface: PositionAware
Get the line number for the method.

Specified by:
getLine in interface PositionAware
Returns:
the line number for the method

getParameterList

public java.lang.String[] getParameterList()
Specified by:
getParameterList in interface MethodArgs2

getScriptObject

public java.lang.Object getScriptObject()


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