Package org.jruby.ir.targets.indy
Class ConstantLookupSite
java.lang.Object
java.lang.invoke.CallSite
java.lang.invoke.MutableCallSite
org.jruby.ir.targets.indy.ConstantLookupSite
Created by headius on 1/31/16.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate MethodHandleprivate MethodHandleprivate MethodHandleprivate MethodHandlestatic final org.objectweb.asm.Handleprivate final booleanprivate static final Loggerprivate final Stringprivate final booleanprivate RubySymbolprivate final SiteTracker -
Constructor Summary
ConstructorsConstructorDescriptionConstantLookupSite(MethodType type, String name, boolean publicOnly, boolean callConstMissing) -
Method Summary
Modifier and TypeMethodDescriptionprivate IRubyObjectbail(ThreadContext context, IRubyObject cmVal, MethodHandle noncachingFallback) private voidbind(Ruby runtime, RubyModule module, IRubyObject constant, MethodHandle cachingFallback) private booleancheckForBailout(RubyModule module) static CallSiteconstLookup(MethodHandles.Lookup lookup, String searchType, MethodType type, String constName, int publicOnly, int callConstMissing) private MethodHandlegetFallback(RubyModule module, MethodHandle cachingFallback) private RubySymbolgetSymbolicName(ThreadContext context) inheritanceSearchConst(ThreadContext context, IRubyObject cmVal) private MethodHandleISC()lexicalSearchConst(ThreadContext context, StaticScope scope) noCacheInheritanceSearchConst(ThreadContext context, IRubyObject cmVal) private MethodHandlenoCacheSearchModuleForConst(ThreadContext context, IRubyObject cmVal) private MethodHandlesearchConst(ThreadContext context, StaticScope staticScope) searchModuleForConst(ThreadContext context, IRubyObject cmVal) private MethodHandleSMFC()Methods inherited from class java.lang.invoke.MutableCallSite
dynamicInvoker, getTarget, setTarget, syncAll
-
Field Details
-
LOG
-
name
-
publicOnly
private final boolean publicOnly -
callConstMissing
private final boolean callConstMissing -
symbolicName
-
tracker
-
BOOTSTRAP
public static final org.objectweb.asm.Handle BOOTSTRAP -
_SMFC
-
_noCacheSMFC
-
_ISC
-
_noCacheISC
-
-
Constructor Details
-
ConstantLookupSite
public ConstantLookupSite(MethodType type, String name, boolean publicOnly, boolean callConstMissing)
-
-
Method Details
-
constLookup
public static CallSite constLookup(MethodHandles.Lookup lookup, String searchType, MethodType type, String constName, int publicOnly, int callConstMissing) -
getSymbolicName
-
searchConst
-
searchModuleForConst
- Throws:
Throwable
-
noCacheSearchModuleForConst
-
inheritanceSearchConst
public IRubyObject inheritanceSearchConst(ThreadContext context, IRubyObject cmVal) throws Throwable - Throws:
Throwable
-
noCacheInheritanceSearchConst
-
getFallback
-
checkForBailout
-
bail
private IRubyObject bail(ThreadContext context, IRubyObject cmVal, MethodHandle noncachingFallback) throws Throwable - Throws:
Throwable
-
bind
private void bind(Ruby runtime, RubyModule module, IRubyObject constant, MethodHandle cachingFallback) -
lexicalSearchConst
-
SMFC
-
noCacheSMFC
-
ISC
-
noCacheISC
-