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, JumpTarget
Direct Known Subclasses:
ReflectedCompiledMethod

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


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
 
Field Summary
protected  java.lang.Object $scriptObject
           
 
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
callConfig, implementationClass, 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.
protected  void init(RubyModule implementationClass, Arity arity, Visibility visibility, StaticScope staticScope, java.lang.Object scriptObject, CallConfiguration callConfig)
           
 boolean isNative()
          Returns true if this method is backed by native (i.e.
 
Methods inherited from class org.jruby.internal.runtime.methods.JavaMethod
callTrace, checkArgumentCount, getArity, getJavaName, init, isSingleton, postBacktraceAndScope, postBacktraceDummyScope, postBacktraceOnly, postFrameAndScope, postFrameOnly, postNoFrameDummyScope, postNoop, postScopeOnly, preBacktraceAndScope, preBacktraceDummyScope, preBacktraceOnly, preFrameAndDummyScope, preFrameAndScope, preFrameOnly, preNoFrameDummyScope, preNoop, preScopeOnly, raiseArgumentError, returnTrace, 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, getProtectedClass, getRealMethod, getSerialNumber, getVisibility, handleRedo, handleReturn, init, isCallableFrom, isUndefined, setCallConfig, setImplementationClass, 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
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)

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


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