Package org.jruby
Class RubyClass
java.lang.Object
org.jruby.RubyBasicObject
org.jruby.RubyObject
org.jruby.RubyModule
org.jruby.RubyClass
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<IRubyObject>,InstanceVariables,InternalVariables,IRubyObject,CoreObjectType
- Direct Known Subclasses:
IncludedModule,MetaClass,PrependedModule
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate classclassstatic enumprivate static classA tuple representing the mechanism by which objects should be marshaled.private static enumAn enum defining the type of marshaling a given class's objects employ.private class(package private) static interfaceNested classes/interfaces inherited from class org.jruby.RubyModule
RubyModule.Autoload, RubyModule.AutoloadMethod, RubyModule.CacheEntryFactory, RubyModule.ConstantEntry, RubyModule.JavaClassKindOf, RubyModule.KindOf, RubyModule.MethodClumper, RubyModule.ModuleKernelMethods, RubyModule.ProfilingCacheEntryFactory, RubyModule.RespondToMissingMethod, RubyModule.SynchronizedCacheEntryFactory, RubyModule.WrapperCacheEntryFactoryNested classes/interfaces inherited from class org.jruby.RubyObject
RubyObject.DataNested classes/interfaces inherited from class org.jruby.RubyBasicObject
RubyBasicObject.Finalizer -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ObjectAllocatorprivate final CallSite[]private RubyClass.MarshalTupleA cached tuple of method, type, and generation for dumpingprivate CacheEntryA cached tuple of method and generation for marshal loadingstatic final ObjectAllocatorstatic final intprivate static final booleanprotected static final ObjectMarshalprivate static final PositionAwareprivate CallSite[]private JavaClassConfigurationprivate static final Loggerprotected ObjectMarshalprivate final RubyClassThe "real" class, used by includes and singletons to locate the actual type of the objectprivate Booleanprotected final Rubyprivate final VariableTableManagerVariable table manager for this classFields inherited from class org.jruby.RubyModule
baseName, cachedMethods, CACHEPROXY_F, classIndex, generation, generationObject, id, INCLUDED_INTO_REFINEMENT, includingHierarchies, index, IS_OVERLAID_F, kindOf, methodInvalidator, methodLocation, methods, MODULE_ALLOCATOR, NEEDSIMPL_F, NormalCacheEntryFactory, OMOD_SHARED, parent, REFINED_MODULE_F, refinedClass, SCOPE_CAPTURING_METHODS, superClassFields inherited from class org.jruby.RubyObject
IVAR_INSPECTING_OBJECT_ALLOCATOR, OBJECT_ALLOCATOR, REIFYING_OBJECT_ALLOCATORFields inherited from class org.jruby.RubyBasicObject
ALL_F, BASICOBJECT_ALLOCATOR, COMPARE_BY_IDENTITY_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, metaClass, NEVER, NIL_F, STAMP_OFFSET, TAINTED_F, UNDEF, UNTRUST_F, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F, USER8_F, USER9_F, USERA_F, VAR_TABLE_OFFSET, varTable, varTableStampFields inherited from interface org.jruby.runtime.builtin.IRubyObject
NULL_ARRAY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedused by CLASS_ALLOCATOR (any Class' class will be a Class!) also used to bootstrap Object classprotectedrb_class_boot (for plain Classes) also used to bootstrap Module and Class classesprotectedseparate path for MetaClass and IncludedModuleWrapper construction (rb_class_boot version for MetaClasses) no marshal, allocator initialization and addSubclass(this) here!protectedA constructor which allows passing in an array of supplementary call sites. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddClassAnnotation(Class<?> annotation, Map fields) voidaddFieldAnnotation(String fieldName, Class<?> annotation, Map fields) voidaddFieldSignature(String fieldName, Class<?> type) voidaddInvalidatorsAndFlush(List<Invalidator> invalidators) voidaddMethodAnnotation(String methodName, Class<?> annotation, Map fields) voidaddMethodSignature(String methodName, Class<?>[] types) voidvoidaddSubclass(RubyClass subclass) Add a new subclass to the weak set of subclasses.allocate()void(package private) static booleancheckFuncallCallable(ThreadContext context, DynamicMethod method, CallType callType, IRubyObject self) private IRubyObjectcheckFuncallDefault(ThreadContext context, IRubyObject self, String name, IRubyObject[] args) private IRubyObjectcheckFuncallDefault(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites) private IRubyObjectcheckFuncallDefault(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites, IRubyObject[] args) private static IRubyObjectcheckFuncallExec(ThreadContext context, IRubyObject self, String name, IRubyObject... args) private static IRubyObjectcheckFuncallExec(ThreadContext context, IRubyObject self, String name, CallSite methodMissingSite, IRubyObject... args) private static IRubyObjectcheckFuncallFailed(ThreadContext context, IRubyObject self, String name, RubyClass expClass, IRubyObject... args) private static IRubyObjectcheckFuncallMissing(ThreadContext context, RubyClass klass, IRubyObject self, String method, IRubyObject... args) private static IRubyObjectcheckFuncallMissing(ThreadContext context, RubyClass klass, IRubyObject self, String method, CachingCallSite respondToMissingSite, CachingCallSite methodMissingSite, IRubyObject... args) private static booleancheckFuncallRespondTo(ThreadContext context, RubyClass klass, IRubyObject recv, String mid) Check if the method has a custom respond_to? and call it if so with the method ID we're hoping to call.private static booleancheckFuncallRespondTo(ThreadContext context, RubyClass klass, IRubyObject recv, RespondToCallSite respondToSite) Check if the method has a custom respond_to? and call it if so with the method ID we're hoping to call.static voidcheckInheritable(IRubyObject superClass) rb_check_inheritableprivate voidstatic RubyClasscreateBootstrapClass(Ruby runtime, String name, RubyClass superClass, ObjectAllocator allocator) boot_defclass Create an initial Object meta class before Module and Kernel dependencies have squirreled themselves together.static voidcreateClassClass(Ruby runtime, RubyClass classClass) private voiddumpReifiedClass(String dumpDir, String javaPath, byte[] classBytes) finvoke(ThreadContext context, IRubyObject self, String name) finvoke(ThreadContext context, IRubyObject self, String name, Block block) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args, Block block) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg, Block block) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, Block block) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2) finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) final IRubyObjectfinvokeChecked(ThreadContext context, IRubyObject self, String name) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate.final IRubyObjectfinvokeChecked(ThreadContext context, IRubyObject self, String name, IRubyObject... args) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate.final IRubyObjectfinvokeChecked(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate.final IRubyObjectfinvokeChecked(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites, IRubyObject... args) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate.finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, Block block) finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject[] args, Block block) finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject arg, Block block) finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject arg0, IRubyObject arg1, Block block) finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) private voidgenerateMethodAnnotations(Map<Class<?>, Map<String, Object>> methodAnnos, SkinnyMethodAdapter m, List<Map<Class<?>, Map<String, Object>>> parameterAnnos) getBaseCallSite(int idx) CallSite[]final RubyCallSite[]Deprecated.If the current class is reified (null otherwise) and if it extends javafinal ObjectMarshalThis is overridden in the other concrete Java builtins to provide a fast way to determine what type they are.Deprecated.Deprecated.getPositionOrDefault(DynamicMethod method) final RubyClassGet the "real" class, either the current one or the nearest ancestor that is not a singleton or include wrapper.Equivalent togetRealClass().Gets a reified Ruby or Java class.Class<? extends ReifiedJavaProxy>Gets a reified Java class.Class<? extends IRubyObject>Gets a reified Ruby class.String[]Get an array of all the known instance variable names.intintbooleanvoidrb_class_inherited (reversed semantics!)inherited(ThreadContext context, IRubyObject arg) initialize(ThreadContext context, Block block) rb_class_initializeinitialize(ThreadContext context, IRubyObject superObject, Block block) initialize_copy(IRubyObject original) rb_class_init_copyinitialize19(ThreadContext context, Block block) initialize19(ThreadContext context, IRubyObject superObject, Block block) private RubyClassinitializeCommon(ThreadContext context, RubyClass superClazz, Block block) voidInvalidate all subclasses of this class by walking the set of all subclasses and asking them to invalidate themselves.invoke(ThreadContext context, IRubyObject self, int methodIndex, String name, IRubyObject[] args, CallType callType, Block block) Deprecated.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invoke(ThreadContext context, IRubyObject self, String name, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, Block block) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject[] args) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject[] args, Block block) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg, Block block) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, Block block) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2) Deprecated.invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) Deprecated.invokeInherited(ThreadContext context, IRubyObject self, IRubyObject subclass) invokePublic(ThreadContext context, IRubyObject self, String name, IRubyObject arg) MRI: rb_funcallv_publicbooleanisClass()Specifically polymorphic method that are meant to be overridden by classes to specify that they are classes in an easy way.booleanisModule()Specifically polymorphic method that are meant to be overridden by modules to specify that they are modules in an easy way.booleanisReifiable(boolean[] java) Whether this class can be reified into a Java class.booleanprivate booleanisVarArgsSignature(String method, Class[] methodSignature) private voidlogReifyException(Throwable failure, boolean error) final voidmarshal(Object obj, MarshalStream marshalStream) static voidmarshalTo(RubyClass clazz, MarshalStream output) static Class<?>nearestReifiedClass(RubyClass klass) static RubyClassConstruct a new class with the given name scoped under Object (global) and with Object as its immediate superclass.static RubyClassnewClass(Ruby runtime, RubyClass superClass, String name, ObjectAllocator allocator, RubyModule parent, boolean setParent) Construct a new class with the given name, allocator, parent class, and containing class.static RubyClassnewClass(Ruby runtime, RubyClass superClass, String name, ObjectAllocator allocator, RubyModule parent, boolean setParent, CallSite[] extraCallSites) A variation on newClass that allows passing in an array of supplementary call sites to improve dynamic invocation performance.static RubyClassA variation on newClass that allow passing in an array of supplementary call sites to improve dynamic invocation.newInstance(ThreadContext context, Block block) rb_class_new_instancenewInstance(ThreadContext context, IRubyObject[] args, Block block) newInstance(ThreadContext context, IRubyObject arg0, Block block) newInstance(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block) newInstance(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) (package private) static booleannotVisibleAndNotMethodMissing(DynamicMethod method, String name, IRubyObject caller, CallType callType) private static booleanrbMethodCallStatus(ThreadContext context, DynamicMethod method, CallType callType, IRubyObject self) final voidreify()final voidreify(boolean useChildLoader) final voidvoidStand up a real Java class for the backing store of this objectvoidvoidreifyWithAncestors(boolean useChildLoader) voidreifyWithAncestors(String classDumpDir) voidreifyWithAncestors(String classDumpDir, boolean useChildLoader) Reify this class, first reifying all its ancestors.voidremoveSubclass(RubyClass subclass) Remove a subclass from the weak set of subclasses.voidreplaceSubclass(RubyClass subclass, RubyClass newSubclass) Replace an existing subclass with a new one.voidsetAllocator(ObjectAllocator allocator) voidsetClassAllocator(Class<?> cls) Set a reflective allocator that calls a no-arg constructor on the given class.voidfinal voidsetMarshal(ObjectMarshal marshal) protected voidsetModuleSuperClass(RubyClass superClass) voidsetReifiedClass(Class<? extends IRubyObject> reifiedClass) voidsetRubyClassAllocator(Class<? extends IRubyObject> clazz) Set a reflective allocator that calls the "standard" Ruby object constructor (Ruby, RubyClass) on the given class.voidsetRubyStaticAllocator(Class<?> clazz) Set a reflective allocator that calls the "standard" Ruby object constructor (Ruby, RubyClass) on the given class via a static __allocate__ method intermediate.private static booleanshouldCallMethodMissing(DynamicMethod method) private static booleanshouldCallMethodMissing(DynamicMethod method, String name, IRubyObject caller, CallType callType) voidsmartDump(MarshalStream stream, IRubyObject target) Marshal the given object to the marshaling stream, being "smart" and caching how to do that marshaling.smartLoadNewUser(IRubyObject target, IRubyObject data) Load marshaled data into a blank target object using marshal_load, being "smart" and caching the mechanism for invoking marshal_load.smartLoadOldUser(IRubyObject data) Load marshaled data into a blank target object using _load, being "smart" and caching the mechanism for invoking _load.final Collection<RubyClass>subclasses(boolean includeDescendants) private voidsubclassesInner(Collection<RubyClass> mine, boolean includeDescendants) superclass(ThreadContext context) Return the real super class of this class.<T> TConvert the object to the specified Java class, if possible.(package private) RubyClasstoSingletonClass(RubyBasicObject target) final Objectunmarshal(UnmarshalStream unmarshalStream) static RubyClassunmarshalFrom(UnmarshalStream input) Methods inherited from class org.jruby.RubyModule
addClassProvider, addIncludingHierarchy, addMethod, addMethodAtBootTimeOnly, addMethodInternal, addMethodSymbols, addModuleFunction, addReadAttribute, addReadWriteAttribute, addToCache, addToCache, addWriteAttribute, alias_method, ancestors, ancestors, append_features, attr, attr_accessor, attr_accessor, attr_reader, attr_reader, attr_writer, attr19, autoload, autoload_p, autoloadingValue, checkForCyclicPrepend, checkFrozen, checkValidBindTargetFrom, class_variable_defined_p, class_variable_get, class_variable_get19, class_variable_set, class_variable_set19, class_variables, class_variables, class_variables19, cloneMethods, const_defined_p, const_defined_p, const_defined_p19, const_get, const_get, const_get_1_9, const_get_2_0, const_missing, const_set, constantEntryFetch, constants, constants, constants19, constants19, constantsCommon, constantsCommon, constantsCommon19, constantTableContains, constantTableFetch, constantTableRemove, constantTableStore, constantTableStore, constantTableStore, constDefined, constDefinedAt, constDefinedFrom, createModuleClass, define_method, define_method, define_method, defineAlias, defineAliases, defineAnnotatedConstant, defineAnnotatedConstants, defineAnnotatedMethod, defineAnnotatedMethod, defineAnnotatedMethod, defineAnnotatedMethod, defineAnnotatedMethods, defineAnnotatedMethodsIndividually, defineAutoload, defineClassUnder, defineConstant, defineMethodFromBlock, defineMethodFromCallable, defineModuleUnder, defineOrGetClassUnder, defineOrGetClassUnder, defineOrGetModuleUnder, deleteClassVariable, deleteConstant, deprecate_constant, deprecate_constant, deprecateConstant, discoverInstanceVariables, ensureClassVariablesSettable, ensureConstantsSettable, equals, exportMethod, extend_object, extended, fastFetchClassVariable, fastFetchConstant, fastGetClass, fastGetClassVar, fastGetConstant, fastGetConstant, fastGetConstantAt, fastGetConstantFrom, fastGetConstantFromConstMissing, fastGetConstantFromNoConstMissing, fastHasClassVariable, fastHasConstant, fastIsClassVarDefined, fastIsConstantDefined, fastIsConstantDefined19, fastIsConstantDefined19, fastSetClassVar, fastSetConstant, fastStoreClassVariable, fastStoreConstant, fetchClassVariable, fetchConstant, fetchConstant, findImplementer, finishAutoload, freeze, getAncestorList, getAutoloadConstant, getAutoloadConstant, getAutoloadFile, getAutoloadMap, getAutoloadMapForWrite, getBaseName, getCacheProxy, getCacheToken, getClass, getClassIndex, getClassVar, getClassVar, getClassVariableNameList, getClassVariables, getClassVariablesForRead, getClassVarQuiet, getConstant, getConstant, getConstant, getConstantAt, getConstantAt, getConstantAtSpecial, getConstantFrom, getConstantFromConstMissing, getConstantFromNoConstMissing, getConstantFromNoConstMissing, getConstantMap, getConstantMapForWrite, getConstantNames, getConstantNames, getConstantNoConstMissing, getConstantNoConstMissing, getConstantNoConstMissing, getConstantNoConstMissingSkipAutoload, getConstantNoConstMissingSKipAutoload, getConstantWithAutoload, getDelegate, getGeneration, getGenerationObject, getIdTest, getInvalidator, getJavaProxy, getMethodLocation, getMethods, getMethodsForWrite, getModule, getName, getNonIncludedClass, getOrigin, getParent, getRefinements, getRefinementsForWrite, getSimpleName, getStoredConstantList, getStoredConstantNameList, getSuperClass, hasClassVariable, hasConstant, hash, hashCode, hasInternalModuleVariable, hasModuleInHierarchy, hasModuleInPrepends, hasPrepends, include, include, include_p, included, included_modules, includeModule, initialize, instance_method, instance_methods, instance_methods19, instanceMethods, instanceMethods, invalidateCacheDescendantsInner, invalidateConstantCache, invalidateConstantCaches, invalidateCoreClasses, isClassVarDefined, isConstantDefined, isConstantDefined, isIncluded, isIncludedIntoRefinement, isInstance, isKindOfModule, isMethodBound, isMethodBound, isMethodBuiltin, isPrepended, isRefinement, isSame, isSameOrigin, isSynchronized, loadPopulatorFor, marshalTo, method_added, method_defined_p, method_defined_p, method_removed, method_undefined, mix, mix, module_eval, module_eval, module_eval, module_eval, module_eval, module_exec, module_exec, module_function, name, name, name19, needsImplementer, nesting, newActivatedRefinementsMap, newIdTest, newIncludeClass, newMethod, newMethod, newMethod, newModule, newModule, newRefinementsMap, newRefinementsMap, op_cmp, op_eqq, op_equal, op_ge, op_gt, op_le, op_lt, populateInstanceMethodNames, prepend, prepend_features, prepended, prependModule, prependModule, private_class_method, private_constant, private_constant, private_instance_methods, private_instance_methods19, private_method_defined, private_method_defined, protected_instance_methods, protected_instance_methods19, protected_method_defined, protected_method_defined, public_class_method, public_constant, public_constant, public_instance_method, public_instance_methods, public_instance_methods19, public_method_defined, public_method_defined, publicConstDefinedFrom, putAlias, putAlias, putMethod, rbPrivate, rbProtected, rbPublic, refine, remove_class_variable, remove_class_variable19, remove_const, remove_method, removeClassProvider, removeClassVariable, removeMethod, resolveRefinedMethod, resolveUndefConstant, respondsToMethod, respondsToMethod, retrieveMethod, rubyBaseName, rubyName, searchAncestor, searchInternalModuleVariable, searchMethod, searchMethodCommon, searchMethodEntryInner, searchMethodInner, searchMethodLateral, searchWithCache, searchWithCache, searchWithRefinements, setBaseName, setCacheProxy, setClassIndex, setClassVar, setConstant, setConstant, setConstantQuiet, setConstantVisibility, setInternalModuleVariable, setJavaProxy, setMethodLocation, setMethodVisibility, setParent, setRefinements, setSuperClass, singleton_class_p, storeClassVariable, storeConstant, storeConstant, syncClassVariables, syncConstants, to_s, undef, undef_method, undefinedMethodMessage, undefineMethod, updateGeneration, used_modules, using, usingModule, validateClassVariable, validateClassVariable, validateClassVariable, validateConstant, validateConstantMethods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, dig, dig1, dig2, eqlInternal, equalInternal, inspect, puts, specificEval, toRubyString, toStringMethods inherited from class org.jruby.RubyBasicObject
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkCallMethod, checkStringType, checkStringType19, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, createBasicObjectClass, dataGetStruct, dataGetStructChecked, dataWrapStruct, decode, defaultToJava, display, dup, ensureInstanceVariablesSettable, eql, eql_p, equal_p, equal_p19, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, frozen_p, getFFIHandle, getFlag, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getJavaClass, getMetaClass, getMetaClass, getNativeHandle, getNativeTypeIndex, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getSingletonClassCloneAndAttach, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hashyInspect, hasInstanceVariable, hasInstanceVariables, hasInternalVariable, hasVariables, id, infectBy, infectBy, infectBy, initialize, initialize19, inspect, inspectHashCode, instance_eval, instance_eval, instance_eval, instance_eval, instance_eval19, instance_eval19, instance_eval19, instance_eval19, instance_exec, instance_exec19, instance_of_p, instance_variable_defined_p, instance_variable_get, instance_variable_set, instance_variables, instance_variables19, isBuiltin, isFalse, isFrozen, isImmediate, isNil, isSpecialConst, isSpecialObject, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method, method_missing, method_missing19, method19, methods, methods, methods19, methodsImpl, nil_p, nonFixnumHashCode, OBJ_INIT_COPY, objInitCopy, op_cmp, op_equal_19, op_match, op_match19, op_not, op_not_equal, op_not_match, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, rbClone, rbClone, rbInspect, recacheBuiltinMethods, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respond_to_p, respond_to_p19, respond_to_p19, respondsTo, respondsToMissing, respondsToMissing, send, send, send, send, send, send19, send19, send19, send19, setFFIHandle, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setNativeHandle, setTaint, setUntrusted, setVariable, singleton_method, singleton_method_added, singleton_method_added19, singleton_method_removed, singleton_method_removed19, singleton_method_undefined, singleton_method_undefined19, singleton_methods, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, taint, tainted, tainted_p, testFrozen, testFrozen, to_a, to_a, trust, type, type_deprecated, untaint, untrust, untrusted_p, validateInstanceVariable, validateInstanceVariable, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableRemove, variableTableStore, variableTableSync, yieldUnder, yieldUnder
-
Field Details
-
LOG
-
CLASS_ALLOCATOR
-
DEFAULT_OBJECT_MARSHAL
-
DEBUG_REIFY
private static final boolean DEBUG_REIFY- See Also:
-
defaultSimplePosition
-
runtime
-
allocator
-
marshal
-
subclasses
-
CS_IDX_INITIALIZE
public static final int CS_IDX_INITIALIZE- See Also:
-
baseCallSites
-
extraCallSites
-
reifiedClass
-
reifiedClassJava
-
javaClassConfiguration
-
cachedDumpMarshal
A cached tuple of method, type, and generation for dumping -
cachedLoad
A cached tuple of method and generation for marshal loading -
realClass
The "real" class, used by includes and singletons to locate the actual type of the object -
variableTableManager
Variable table manager for this class
-
-
Constructor Details
-
RubyClass
separate path for MetaClass and IncludedModuleWrapper construction (rb_class_boot version for MetaClasses) no marshal, allocator initialization and addSubclass(this) here! -
RubyClass
used by CLASS_ALLOCATOR (any Class' class will be a Class!) also used to bootstrap Object class -
RubyClass
rb_class_boot (for plain Classes) also used to bootstrap Module and Class classes -
RubyClass
A constructor which allows passing in an array of supplementary call sites.
-
-
Method Details
-
createClassClass
-
getAllocator
-
setAllocator
-
setClassAllocator
Set a reflective allocator that calls a no-arg constructor on the given class.- Parameters:
cls- The class on which to call the default constructor to allocate
-
setRubyClassAllocator
Set a reflective allocator that calls the "standard" Ruby object constructor (Ruby, RubyClass) on the given class.- Parameters:
clazz- The class from which to grab a standard Ruby constructor
-
setRubyStaticAllocator
Set a reflective allocator that calls the "standard" Ruby object constructor (Ruby, RubyClass) on the given class via a static __allocate__ method intermediate.- Parameters:
clazz- The class from which to grab a standard Ruby __allocate__ method.
-
allocate
-
getBaseCallSite
-
getBaseCallSites
-
getExtraCallSites
-
getVariableTableManager
-
hasObjectID
public boolean hasObjectID() -
getVariableAccessorsForRead
-
getVariableAccessorForWrite
-
getVariableAccessorForRead
-
getFFIHandleAccessorForRead
-
getFFIHandleAccessorForWrite
-
getObjectGroupAccessorForRead
-
getObjectGroupAccessorForWrite
-
getVariableTableSize
public int getVariableTableSize() -
getVariableTableSizeWithExtras
public int getVariableTableSizeWithExtras() -
getVariableNames
Get an array of all the known instance variable names. The offset into the array indicates the offset of the variable's value in the per-object variable array.- Returns:
- a copy of the array of known instance variable names
-
getVariableTableCopy
-
getNativeClassIndex
Description copied from class:RubyObjectThis is overridden in the other concrete Java builtins to provide a fast way to determine what type they are. Will generally return a value from org.jruby.runtime.ClassIndex- Specified by:
getNativeClassIndexin interfaceCoreObjectType- Overrides:
getNativeClassIndexin classRubyModule- See Also:
-
isModule
public boolean isModule()Description copied from class:RubyBasicObjectSpecifically polymorphic method that are meant to be overridden by modules to specify that they are modules in an easy way.- Specified by:
isModulein interfaceIRubyObject- Overrides:
isModulein classRubyModule- Returns:
- true if an object is Ruby Module instance (note that it will return false for Ruby Classes).
If is_a? semantics is required, use
(someObject instanceof RubyModule)instead.
-
isClass
public boolean isClass()Description copied from class:RubyBasicObjectSpecifically polymorphic method that are meant to be overridden by classes to specify that they are classes in an easy way.- Specified by:
isClassin interfaceIRubyObject- Overrides:
isClassin classRubyModule- Returns:
- true if an object is Ruby Class instance (note that it will return false for Ruby singleton classes).
If is_a? semantics is required, use
(someObject instanceof RubyClass/MetaClass)instead.
-
isSingleton
public boolean isSingleton()- Overrides:
isSingletonin classRubyModule
-
createBootstrapClass
public static RubyClass createBootstrapClass(Ruby runtime, String name, RubyClass superClass, ObjectAllocator allocator) boot_defclass Create an initial Object meta class before Module and Kernel dependencies have squirreled themselves together.- Parameters:
runtime- we need it- Returns:
- a half-baked meta class for object
-
newClass
Construct a new class with the given name scoped under Object (global) and with Object as its immediate superclass. Corresponds to rb_class_new in MRI. -
newClass
A variation on newClass that allow passing in an array of supplementary call sites to improve dynamic invocation. -
newClass
public static RubyClass newClass(Ruby runtime, RubyClass superClass, String name, ObjectAllocator allocator, RubyModule parent, boolean setParent) Construct a new class with the given name, allocator, parent class, and containing class. If setParent is true, the class's parent will be explicitly set to the provided parent (rather than the new class just being assigned to a constant in that parent). Corresponds to rb_class_new/rb_define_class_id/rb_name_class/rb_set_class_path in MRI. -
newClass
public static RubyClass newClass(Ruby runtime, RubyClass superClass, String name, ObjectAllocator allocator, RubyModule parent, boolean setParent, CallSite[] extraCallSites) A variation on newClass that allows passing in an array of supplementary call sites to improve dynamic invocation performance. -
toSingletonClass
- See Also:
-
notVisibleAndNotMethodMissing
static boolean notVisibleAndNotMethodMissing(DynamicMethod method, String name, IRubyObject caller, CallType callType) -
finvoke
-
finvokeWithRefinements
public IRubyObject finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, Block block) -
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args, Block block) -
finvokeWithRefinements
public IRubyObject finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject[] args, Block block) -
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg, Block block) -
finvokeWithRefinements
public IRubyObject finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject arg, Block block) -
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, Block block) -
finvokeWithRefinements
public IRubyObject finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject arg0, IRubyObject arg1, Block block) -
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) -
finvokeWithRefinements
public IRubyObject finvokeWithRefinements(ThreadContext context, IRubyObject self, StaticScope staticScope, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) -
finvoke
-
invokePublic
public IRubyObject invokePublic(ThreadContext context, IRubyObject self, String name, IRubyObject arg) MRI: rb_funcallv_public -
finvokeChecked
Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate. MRI: rb_check_funcall -
finvokeChecked
public final IRubyObject finvokeChecked(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate. MRI: rb_check_funcall -
finvokeChecked
public final IRubyObject finvokeChecked(ThreadContext context, IRubyObject self, String name, IRubyObject... args) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate. MRI: rb_check_funcall -
finvokeChecked
public final IRubyObject finvokeChecked(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites, IRubyObject... args) Safely attempt to invoke the given method name on self, using respond_to? and method_missing as appropriate. MRI: rb_check_funcall -
checkFuncallDefault
private IRubyObject checkFuncallDefault(ThreadContext context, IRubyObject self, String name, IRubyObject[] args) -
checkFuncallDefault
private IRubyObject checkFuncallDefault(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites, IRubyObject[] args) -
checkFuncallDefault
private IRubyObject checkFuncallDefault(ThreadContext context, IRubyObject self, JavaSites.CheckedSites sites) -
checkFuncallExec
private static IRubyObject checkFuncallExec(ThreadContext context, IRubyObject self, String name, IRubyObject... args) -
checkFuncallExec
private static IRubyObject checkFuncallExec(ThreadContext context, IRubyObject self, String name, CallSite methodMissingSite, IRubyObject... args) -
checkFuncallFailed
private static IRubyObject checkFuncallFailed(ThreadContext context, IRubyObject self, String name, RubyClass expClass, IRubyObject... args) -
checkFuncallRespondTo
private static boolean checkFuncallRespondTo(ThreadContext context, RubyClass klass, IRubyObject recv, String mid) Check if the method has a custom respond_to? and call it if so with the method ID we're hoping to call. MRI: check_funcall_respond_to -
checkFuncallRespondTo
private static boolean checkFuncallRespondTo(ThreadContext context, RubyClass klass, IRubyObject recv, RespondToCallSite respondToSite) Check if the method has a custom respond_to? and call it if so with the method ID we're hoping to call. MRI: check_funcall_respond_to -
checkFuncallCallable
static boolean checkFuncallCallable(ThreadContext context, DynamicMethod method, CallType callType, IRubyObject self) -
rbMethodCallStatus
private static boolean rbMethodCallStatus(ThreadContext context, DynamicMethod method, CallType callType, IRubyObject self) -
checkFuncallMissing
private static IRubyObject checkFuncallMissing(ThreadContext context, RubyClass klass, IRubyObject self, String method, IRubyObject... args) -
checkFuncallMissing
private static IRubyObject checkFuncallMissing(ThreadContext context, RubyClass klass, IRubyObject self, String method, CachingCallSite respondToMissingSite, CachingCallSite methodMissingSite, IRubyObject... args) -
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args) -
finvoke
-
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1) -
finvoke
public IRubyObject finvoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2) -
dumpReifiedClass
-
generateMethodAnnotations
-
shouldCallMethodMissing
-
shouldCallMethodMissing
private static boolean shouldCallMethodMissing(DynamicMethod method, String name, IRubyObject caller, CallType callType) -
invokeInherited
-
newInstance
rb_class_new_instance -
newInstance
-
newInstance
public IRubyObject newInstance(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block) -
newInstance
public IRubyObject newInstance(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) -
newInstance
-
initialize
rb_class_initialize- Overrides:
initializein classRubyModule
-
initialize
-
initialize19
-
initialize19
-
initializeCommon
-
initialize_copy
rb_class_init_copy- Overrides:
initialize_copyin classRubyModule
-
setModuleSuperClass
-
subclasses
-
subclasses
-
subclassesInner
-
addSubclass
Add a new subclass to the weak set of subclasses. This version always constructs a new set to avoid having to synchronize against the set when iterating it for invalidation in invalidateCacheDescendants.- Parameters:
subclass- The subclass to add
-
removeSubclass
Remove a subclass from the weak set of subclasses.- Parameters:
subclass- The subclass to remove
-
replaceSubclass
Replace an existing subclass with a new one.- Parameters:
subclass- The subclass to removenewSubclass- The subclass to replace it with
-
becomeSynchronized
public void becomeSynchronized()- Overrides:
becomeSynchronizedin classRubyModule
-
invalidateCacheDescendants
public void invalidateCacheDescendants()Invalidate all subclasses of this class by walking the set of all subclasses and asking them to invalidate themselves. Note that this version works against a reference to the current set of subclasses, which could be replaced by the time this iteration is complete. In theory, there may be a path by which invalidation would miss a class added during the invalidation process, but the exposure is minimal if it exists at all. The only way to prevent it would be to synchronize both invalidation and subclass set modification against a global lock, which we would like to avoid.- Overrides:
invalidateCacheDescendantsin classRubyModule
-
addInvalidatorsAndFlush
-
getClassRuntime
-
getRealClass
Get the "real" class, either the current one or the nearest ancestor that is not a singleton or include wrapper.- Returns:
- the nearest non-singleton non-include class
-
getRealModule
Equivalent togetRealClass().- Overrides:
getRealModulein classRubyModule- Returns:
- the nearest non-singleton non-include class
-
inherited
-
inherit
rb_class_inherited (reversed semantics!) -
superclass
Return the real super class of this class. rb_class_superclass -
checkNotInitialized
private void checkNotInitialized() -
checkInheritable
rb_check_inheritable -
getMarshal
-
setMarshal
-
marshal
- Throws:
IOException
-
unmarshal
- Throws:
IOException
-
marshalTo
- Throws:
IOException
-
unmarshalFrom
- Throws:
IOException
-
isReifiable
public boolean isReifiable(boolean[] java) Whether this class can be reified into a Java class. Currently only objects that descend from Object (or descend from Ruby-based classes that descend from Object) can be reified.- Parameters:
java- If reified from java (out param)- Returns:
- true if the class can be reified, false otherwise. The out param indicate if it is java concrete reification
-
reifyWithAncestors
public void reifyWithAncestors() -
reifyWithAncestors
-
reifyWithAncestors
public void reifyWithAncestors(boolean useChildLoader) -
reifyWithAncestors
Reify this class, first reifying all its ancestors. This causes the reified class and all ancestors' reified classes to come into existence, so any future changes will not be reflected. This form also accepts a string argument indicating a path in which to dump the intermediate reified class bytes.- Parameters:
classDumpDir- the path in which to dump reified class bytesuseChildLoader- whether to load the class into its own child classloader
-
reify
public final void reify() -
reify
-
reify
public final void reify(boolean useChildLoader) -
reify
Stand up a real Java class for the backing store of this object- Parameters:
classDumpDir- Directory to save reified java class
-
getPositionOrDefault
-
isVarArgsSignature
-
logReifyException
-
setReifiedClass
-
getReifiedClass
Gets a reified Ruby or Java class. To ensure a specific type, seegetReifiedRubyClass()orgetReifiedJavaClass() -
getReifiedRubyClass
Gets a reified Ruby class. Throws if this is a Java class -
getReifiedJavaClass
Gets a reified Java class. Throws if this is a Ruby class -
getIsReifiedExtendedJavaClass
If the current class is reified (null otherwise) and if it extends java- Returns:
- Null if not reified, true if a concrete extension class, and false if a ruby class
-
nearestReifiedClass
-
getParameterAnnotations
-
addParameterAnnotation
-
getMethodAnnotations
-
getFieldAnnotations
-
addMethodAnnotation
-
addFieldAnnotation
-
getMethodSignatures
-
getAllMethodSignatures
-
getFieldSignatures
-
addMethodSignature
-
addFieldSignature
-
getClassAnnotations
-
addClassAnnotation
-
getClassConfig
-
setClassConfig
-
toJava
Description copied from interface:IRubyObjectConvert the object to the specified Java class, if possible.- Specified by:
toJavain interfaceIRubyObject- Overrides:
toJavain classRubyModule- Parameters:
target- The target type to which the object should be converted.- See Also:
-
smartDump
Marshal the given object to the marshaling stream, being "smart" and caching how to do that marshaling. If the class defines a custom "respond_to?" method, then the behavior of dumping could vary without our class structure knowing it. As a result, we do only the slow-path classic behavior. If the class defines a real "marshal_dump" method, we cache and use that. If the class defines a real "_dump" method, we cache and use that. If the class neither defines none of the above methods, we use a fast path directly to the default dumping logic.- Parameters:
stream- The stream to which to marshal the datatarget- The object whose data should be marshaled- Throws:
IOException- If there is an IO exception while writing to the stream.
-
smartLoadNewUser
Load marshaled data into a blank target object using marshal_load, being "smart" and caching the mechanism for invoking marshal_load. If the class implements a custom respond_to?, cache nothing and go slow path invocation of respond_to? and marshal_load every time. Raise error if respond_to? :marshal_load returns true and no :marshal_load is defined. If the class implements marshal_load, cache and use that. Otherwise, error, since marshal_load is not present.- Parameters:
target- The blank target object into which marshal_load will deserialize the given datadata- The marshaled data- Returns:
- The fully-populated target object
-
smartLoadOldUser
Load marshaled data into a blank target object using _load, being "smart" and caching the mechanism for invoking _load. If the metaclass implements custom respond_to?, cache nothing and go slow path invocation of respond_to? and _load every time. Raise error if respond_to? :_load returns true and no :_load is defined. If the metaclass implements _load, cache and use that. Otherwise, error, since _load is not present.- Parameters:
data- The marshaled data, to be reconstituted into an object by _load- Returns:
- The fully-populated target object
-
invoke
@Deprecated public IRubyObject invoke(ThreadContext context, IRubyObject self, int methodIndex, String name, IRubyObject[] args, CallType callType, Block block) Deprecated. -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, CallType callType, Block block) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject[] args, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
invoke
public IRubyObject invoke(ThreadContext context, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, CallType callType) Deprecated.Use finvoke if you do not want visibility-checking or invokeFrom if you do.This method is deprecated because it depends on having a Ruby frame pushed for checking method visibility, and there's no way to enforce that. Most users of this method probably don't need to check visibility. See https://github.com/jruby/jruby/issues/4134 -
getObjectIdAccessorField
Deprecated. -
getFFIHandleAccessorField
Deprecated. -
getObjectGroupAccessorField
Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, Block block) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject[] args, Block block) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg, Block block) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, Block block) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject[] args) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1) Deprecated. -
invokeFrom
@Deprecated public IRubyObject invokeFrom(ThreadContext context, CallType callType, IRubyObject caller, IRubyObject self, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2) Deprecated.
-