org.jruby.IncludedModuleWrapper , org.jruby.RubyModule
| Modifier and Type | Field and Description |
|---|---|
| private RubyModule |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public void | addMethod(ThreadContext context, String id, DynamicMethod method)
Overrides org.
|
| protected RubyModule. | |
| protected IRubyObject | |
| protected IRubyObject | constantTableStore(String name, IRubyObject value)
Overrides org.
|
| protected IRubyObject | constantTableStore(String name, IRubyObject value, boolean hidden)
Overrides org.
|
| protected IRubyObject | getAutoloadConstant(ThreadContext context, String name, boolean forceLoad)
Overrides org.
|
| protected Map | getAutoloadMap()
Overrides org. AutoloadMap must be accessed after checking ConstantMap. |
| protected Map | |
| protected synchronized Map | |
| protected Map | |
| public RubyModule | getDelegate()
Overrides org. Implements org.
|
| public String | getName(ThreadContext context)
Overrides org. Generate a fully-qualified class name or a #-style name for anonymous and singleton classes. |
| public RubyModule | |
| public RubyModule | getOrigin()
Overrides org. In an included or prepended module what is the ACTUAL module it represents? |
| public IRubyObject | id()
Overrides org. Implements org. We don't want to reveal ourselves to Ruby code, so origin this operation. |
| public boolean | isClass()
Overrides org. Implements org. Specifically polymorphic method that are meant to be overridden by classes to specify that they are classes in an easy way. |
| public boolean | isImmediate()
Overrides org. Implements org. Is object immediate (def: Fixnum, Symbol, true, false, nil?). |
| public boolean | isModule()
Overrides org. Implements org. Specifically polymorphic method that are meant to be overridden by modules to specify that they are modules in an easy way. |
| public boolean | |
| private boolean | moveRefinedMethod(String key, DynamicMethod method, RubyModule klass)
Transfer refined methods from the prepend stub to the origin as markers so they trigger refinements MRI: move_refined_method |
| public void | setMetaClass(RubyClass
the meta class to set newRubyClass)Overrides org. Makes it possible to change the metaclass of an object. |
| origin | back to summary |
|---|---|
| private RubyModule origin | |
| PrependedModule | back to summary |
|---|---|
| public PrependedModule(Ruby runtime, RubyClass superClass, RubyModule prependedClass) | |
| addMethod | back to summary |
|---|---|
| public void addMethod(ThreadContext context, String id, DynamicMethod method) Overrides org.
| |
| constantEntryFetch | back to summary |
|---|---|
| protected RubyModule. Overrides org.
| |
| constantTableRemove | back to summary |
|---|---|
| protected IRubyObject constantTableRemove(String name) Overrides org.
| |
| constantTableStore | back to summary |
|---|---|
| protected IRubyObject constantTableStore(String name, IRubyObject value) Overrides org.
| |
| constantTableStore | back to summary |
|---|---|
| protected IRubyObject constantTableStore(String name, IRubyObject value, boolean hidden) Overrides org. | |
| getAutoloadConstant | back to summary |
|---|---|
| protected IRubyObject getAutoloadConstant(ThreadContext context, String name, boolean forceLoad) Overrides org.
| |
| getAutoloadMap | back to summary |
|---|---|
| protected Map Overrides org. Doc from org. AutoloadMap must be accessed after checking ConstantMap. Checking UNDEF value in constantMap works as a guard. For looking up constant, check constantMap first then try to get an Autoload object from autoloadMap. For setting constant, update constantMap first and remove an Autoload object from autoloadMap.
| |
| getAutoloadMapForWrite | back to summary |
|---|---|
| protected Map Overrides org.
| |
| getClassVariables | back to summary |
|---|---|
| protected synchronized Map Overrides org.
| |
| getClassVariablesForRead | back to summary |
|---|---|
| protected Map Overrides org.
| |
| getDelegate | back to summary |
|---|---|
| public RubyModule getDelegate() Overrides org. Implements org.
| |
| getName | back to summary |
|---|---|
| public String getName(ThreadContext context) Overrides org. Doc from org. Generate a fully-qualified class name or a #-style name for anonymous and singleton classes. Ruby C equivalent = "classname" | |
| getNonIncludedClass | back to summary |
|---|---|
| public RubyModule getNonIncludedClass() Overrides org. Deprecated
| |
| getOrigin | back to summary |
|---|---|
| public RubyModule getOrigin() Overrides org. Doc from org. In an included or prepended module what is the ACTUAL module it represents?
| |
| id | back to summary |
|---|---|
| public IRubyObject id() Overrides org. Implements org. We don't want to reveal ourselves to Ruby code, so origin this operation.
| |
| isClass | back to summary |
|---|---|
| public boolean isClass() Overrides org. Implements org. Doc from org. Specifically polymorphic method that are meant to be overridden by classes to specify that they are classes in an easy way.
| |
| isImmediate | back to summary |
|---|---|
| public boolean isImmediate() Overrides org. Implements org. Doc from org. Is object immediate (def: Fixnum, Symbol, true, false, nil?).
| |
| isModule | back to summary |
|---|---|
| public boolean isModule() Overrides org. Implements org. Doc from org. Specifically polymorphic method that are meant to be overridden by modules to specify that they are modules in an easy way.
| |
| isPrepended | back to summary |
|---|---|
| public boolean isPrepended() Overrides org.
| |
| moveRefinedMethod | back to summary |
|---|---|
| private boolean moveRefinedMethod(String key, DynamicMethod method, RubyModule klass) Transfer refined methods from the prepend stub to the origin as markers so they trigger refinements MRI: move_refined_method | |
| setMetaClass | back to summary |
|---|---|
| public void setMetaClass(RubyClass newRubyClass) Overrides org. Doc from org. Makes it possible to change the metaclass of an object. In practice, this is a simple version of Smalltalks Become, except that it doesn't work when we're dealing with subclasses. In practice it's used to change the singleton/meta class used, without changing the "real" inheritance chain. | |