public abstract class AbstractIRMethod extends DynamicMethod implements IRMethodArgs, PositionAware, Cloneable
DynamicMethod.NativeCall
Modifier and Type | Field and Description |
---|---|
protected int |
callCount |
protected InterpreterContext |
interpreterContext |
protected IRScope |
method |
protected StaticScope |
staticScope |
definedClass, flags, handle, implementationClass, name, protectedClass, serialNumber
Constructor and Description |
---|
AbstractIRMethod(IRScope method,
Visibility visibility,
RubyModule implementationClass) |
Modifier and Type | Method and Description |
---|---|
Object |
clone() |
DynamicMethod |
dup()
Duplicate this method, returning DynamicMethod referencing the same code
and with the same attributes.
|
abstract InterpreterContext |
ensureInstrsReady() |
ArgumentDescriptor[] |
getArgumentDescriptors()
Get the array of ArgumentDescriptors that represent the arguments to this method.
|
Arity |
getArity()
Retrieve the arity of this method, used for reporting arity to Ruby
code.
|
String |
getClassName(ThreadContext context) |
String |
getFile()
Get the filename for the method.
|
IRScope |
getIRScope() |
int |
getLine()
Get the line number for the method.
|
MethodData |
getMethodData()
Additional metadata about this method.
|
Signature |
getSignature()
Get the Signature for this method.
|
StaticScope |
getStaticScope() |
void |
setCallCount(int callCount) |
calculateProtectedClass, call, call, call, call, call, call, call, call, call, call, getCallConfig, getDefinedClass, getHandle, getImplementationClass, getName, getProtectedClass, getRealMethod, getSerialNumber, getVisibility, init, init, isBuiltin, isCallableFrom, isImplementedBy, isNative, isNotImplemented, isNull, isUndefined, setCallConfig, setDefinedClass, setHandle, setImplementationClass, setIsBuiltin, setName, setNotImplemented, setVisibility
protected final IRScope method
protected final StaticScope staticScope
protected InterpreterContext interpreterContext
protected int callCount
public AbstractIRMethod(IRScope method, Visibility visibility, RubyModule implementationClass)
public IRScope getIRScope()
public void setCallCount(int callCount)
public StaticScope getStaticScope()
public ArgumentDescriptor[] getArgumentDescriptors()
IRMethodArgs
getArgumentDescriptors
in interface IRMethodArgs
public abstract InterpreterContext ensureInstrsReady()
public Signature getSignature()
IRMethodArgs
getSignature
in interface IRMethodArgs
public Arity getArity()
DynamicMethod
getArity
in class DynamicMethod
public DynamicMethod dup()
DynamicMethod
dup
in class DynamicMethod
public String getClassName(ThreadContext context)
public String getFile()
PositionAware
getFile
in interface PositionAware
public int getLine()
PositionAware
getLine
in interface PositionAware
public MethodData getMethodData()
getMethodData
in class DynamicMethod
Copyright © 2001-2017 JRuby. All Rights Reserved.