org.jruby.ast.executable
Class RuntimeCache
java.lang.Object
org.jruby.ast.executable.RuntimeCache
public class RuntimeCache
- extends java.lang.Object
Method Summary |
RubyRegexp |
cacheRegexp(int index,
RubyString pattern,
int options)
|
java.math.BigInteger |
getBigInteger(Ruby runtime,
int index,
java.lang.String pattern)
|
BlockBody |
getBlockBody(java.lang.Object scriptObject,
ThreadContext context,
int index,
java.lang.String descriptor)
descriptor format is
closure_method_name,arity,varname1;varname2;varname3,has_multi_args_head,arg_type,light |
BlockBody |
getBlockBody19(java.lang.Object scriptObject,
ThreadContext context,
int index,
java.lang.String descriptor)
descriptor format is
closure_method_name,arity,varname1;varname2;varname3,has_multi_args_head,arg_type,light |
CompiledBlockCallback |
getBlockCallback(java.lang.Object scriptObject,
Ruby runtime,
int index,
java.lang.String method)
|
org.jruby.util.ByteList |
getByteList(int index)
|
CallSite |
getCallSite(int index)
|
IRubyObject |
getConstant(ThreadContext context,
java.lang.String name,
int index)
|
IRubyObject |
getConstantFrom(RubyModule target,
ThreadContext context,
java.lang.String name,
int index)
|
org.jcodings.Encoding |
getEncoding(int index)
|
RubyFixnum |
getFixnum(Ruby runtime,
int index,
int value)
|
RubyFixnum |
getFixnum(Ruby runtime,
int index,
long value)
|
RubyFloat |
getFloat(Ruby runtime,
int index,
double value)
|
DynamicMethod |
getMethod(ThreadContext context,
IRubyObject self,
int index,
java.lang.String methodName)
|
DynamicMethod |
getMethod(ThreadContext context,
RubyClass selfType,
int index,
java.lang.String methodName)
|
RubyRegexp |
getRegexp(int index)
|
RubyRegexp |
getRegexp(Ruby runtime,
int index,
org.jruby.util.ByteList pattern,
int options)
|
StaticScope |
getScope(ThreadContext context,
java.lang.String varNamesDescriptor,
int index)
|
RubyString |
getString(Ruby runtime,
int index,
int codeRange)
|
RubySymbol |
getSymbol(Ruby runtime,
int index,
java.lang.String name)
|
IRubyObject |
getValue(ThreadContext context,
java.lang.String name,
int index)
|
IRubyObject |
getValueFrom(RubyModule target,
ThreadContext context,
java.lang.String name,
int index)
|
IRubyObject |
getVariable(Ruby runtime,
int index,
java.lang.String name,
IRubyObject object)
|
void |
initBigIntegers(int size)
|
void |
initBlockBodies(int size)
|
void |
initBlockCallbacks(int size)
|
void |
initCallSites(int size)
|
void |
initConstants(int size)
|
org.jcodings.Encoding[] |
initEncodings(int size)
|
void |
initFixnums(int size)
|
void |
initFloats(int size)
|
void |
initFromDescriptor(java.lang.String descriptor)
Given a packed descriptor listing methods and their type, populate the
call site cache. |
void |
initMethodCache(int size)
|
void |
initOthers(java.lang.String descriptor)
Given a packed descriptor of other cache sizes, construct the cache arrays
The format of the descriptor is the actual size cast to char in this order:
scopeCount
inheritedSymbolCount
inheritedFixnumCount
inheritedConstantCount
inheritedRegexpCount
inheritedBigIntegerCount
inheritedVariableReaderCount
inheritedVariableWriterCount
inheritedBlockBodyCount
inheritedBlockCallbackCount
inheritedMethodCount
inheritedStringCount
|
void |
initRegexps(int size)
|
void |
initScopes(int size)
|
org.jruby.util.ByteList[] |
initStrings(int size)
|
void |
initSymbols(int size)
|
void |
initVariableReaders(int size)
|
void |
initVariableWriters(int size)
|
IRubyObject |
reCache(ThreadContext context,
java.lang.String name,
int index)
|
IRubyObject |
reCacheFrom(RubyModule target,
ThreadContext context,
java.lang.String name,
int index)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7)
|
DynamicMethod |
searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7,
java.lang.String name8)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7)
|
DynamicMethod |
searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7,
java.lang.String name8)
|
IRubyObject |
setVariable(Ruby runtime,
int index,
java.lang.String name,
IRubyObject object,
IRubyObject value)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
scopes
public StaticScope[] scopes
callSites
public CallSite[] callSites
methodCache
public CacheEntry[] methodCache
blockBodies
public BlockBody[] blockBodies
blockCallbacks
public CompiledBlockCallback[] blockCallbacks
symbols
public RubySymbol[] symbols
byteLists
public org.jruby.util.ByteList[] byteLists
encodings
public org.jcodings.Encoding[] encodings
fixnums
public RubyFixnum[] fixnums
floats
public RubyFloat[] floats
regexps
public RubyRegexp[] regexps
bigIntegers
public java.math.BigInteger[] bigIntegers
variableReaders
public RubyClass.VariableAccessor[] variableReaders
variableWriters
public RubyClass.VariableAccessor[] variableWriters
constants
public IRubyObject[] constants
constantGenerations
public int[] constantGenerations
constantTargetHashes
public int[] constantTargetHashes
RuntimeCache
public RuntimeCache()
getScope
public final StaticScope getScope(ThreadContext context,
java.lang.String varNamesDescriptor,
int index)
getCallSite
public final CallSite getCallSite(int index)
getBlockBody
public final BlockBody getBlockBody(java.lang.Object scriptObject,
ThreadContext context,
int index,
java.lang.String descriptor)
- descriptor format is
closure_method_name,arity,varname1;varname2;varname3,has_multi_args_head,arg_type,light
- Parameters:
context
- index
- descriptor
-
- Returns:
getBlockBody19
public final BlockBody getBlockBody19(java.lang.Object scriptObject,
ThreadContext context,
int index,
java.lang.String descriptor)
- descriptor format is
closure_method_name,arity,varname1;varname2;varname3,has_multi_args_head,arg_type,light
- Parameters:
context
- index
- descriptor
-
- Returns:
getBlockCallback
public final CompiledBlockCallback getBlockCallback(java.lang.Object scriptObject,
Ruby runtime,
int index,
java.lang.String method)
getSymbol
public final RubySymbol getSymbol(Ruby runtime,
int index,
java.lang.String name)
getString
public final RubyString getString(Ruby runtime,
int index,
int codeRange)
getByteList
public final org.jruby.util.ByteList getByteList(int index)
getEncoding
public final org.jcodings.Encoding getEncoding(int index)
getFixnum
public final RubyFixnum getFixnum(Ruby runtime,
int index,
int value)
getFixnum
public final RubyFixnum getFixnum(Ruby runtime,
int index,
long value)
getFloat
public final RubyFloat getFloat(Ruby runtime,
int index,
double value)
getRegexp
public final RubyRegexp getRegexp(Ruby runtime,
int index,
org.jruby.util.ByteList pattern,
int options)
getRegexp
public final RubyRegexp getRegexp(int index)
cacheRegexp
public final RubyRegexp cacheRegexp(int index,
RubyString pattern,
int options)
getBigInteger
public final java.math.BigInteger getBigInteger(Ruby runtime,
int index,
java.lang.String pattern)
getVariable
public final IRubyObject getVariable(Ruby runtime,
int index,
java.lang.String name,
IRubyObject object)
setVariable
public final IRubyObject setVariable(Ruby runtime,
int index,
java.lang.String name,
IRubyObject object,
IRubyObject value)
initScopes
public final void initScopes(int size)
initCallSites
public final void initCallSites(int size)
initFromDescriptor
public final void initFromDescriptor(java.lang.String descriptor)
- Given a packed descriptor listing methods and their type, populate the
call site cache.
The format of the methods portion of the descriptor is
name1;type1;name2;type2 where type1 and type2 are a single capital letter
N, F, V, or S for the four main call types. After the method portion,
the other cache sizes are provided as a packed String of char values
representing the numeric sizes. @see RuntimeCache#initOthers.
- Parameters:
descriptor
- The descriptor to use for populating call sites and caches
initOthers
public final void initOthers(java.lang.String descriptor)
- Given a packed descriptor of other cache sizes, construct the cache arrays
The format of the descriptor is the actual size cast to char in this order:
- scopeCount
- inheritedSymbolCount
- inheritedFixnumCount
- inheritedConstantCount
- inheritedRegexpCount
- inheritedBigIntegerCount
- inheritedVariableReaderCount
- inheritedVariableWriterCount
- inheritedBlockBodyCount
- inheritedBlockCallbackCount
- inheritedMethodCount
- inheritedStringCount
- Parameters:
descriptor
- The descriptor to use for preparing caches
initBlockBodies
public final void initBlockBodies(int size)
initBlockCallbacks
public final void initBlockCallbacks(int size)
initSymbols
public final void initSymbols(int size)
initStrings
public final org.jruby.util.ByteList[] initStrings(int size)
initEncodings
public final org.jcodings.Encoding[] initEncodings(int size)
initFixnums
public final void initFixnums(int size)
initFloats
public final void initFloats(int size)
initRegexps
public final void initRegexps(int size)
initBigIntegers
public final void initBigIntegers(int size)
initConstants
public final void initConstants(int size)
initVariableReaders
public final void initVariableReaders(int size)
initVariableWriters
public final void initVariableWriters(int size)
initMethodCache
public final void initMethodCache(int size)
getConstant
public final IRubyObject getConstant(ThreadContext context,
java.lang.String name,
int index)
getValue
public IRubyObject getValue(ThreadContext context,
java.lang.String name,
int index)
reCache
public IRubyObject reCache(ThreadContext context,
java.lang.String name,
int index)
getConstantFrom
public final IRubyObject getConstantFrom(RubyModule target,
ThreadContext context,
java.lang.String name,
int index)
getValueFrom
public IRubyObject getValueFrom(RubyModule target,
ThreadContext context,
java.lang.String name,
int index)
reCacheFrom
public IRubyObject reCacheFrom(RubyModule target,
ThreadContext context,
java.lang.String name,
int index)
getMethod
public DynamicMethod getMethod(ThreadContext context,
RubyClass selfType,
int index,
java.lang.String methodName)
getMethod
public DynamicMethod getMethod(ThreadContext context,
IRubyObject self,
int index,
java.lang.String methodName)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7)
searchWithCache
public DynamicMethod searchWithCache(RubyClass clazz,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7,
java.lang.String name8)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7)
searchWithCache
public DynamicMethod searchWithCache(IRubyObject obj,
int index,
java.lang.String name1,
java.lang.String name2,
java.lang.String name3,
java.lang.String name4,
java.lang.String name5,
java.lang.String name6,
java.lang.String name7,
java.lang.String name8)
Copyright © 2002-2009 JRuby Team. All Rights Reserved.