org.jruby.runtime.builtin
Interface InternalVariables

All Known Implementing Classes:
AbstractInvoker, AbstractMemory, ArrayJavaProxy, ArrayJavaProxyCreator, AutoPointer, BasicObjectStub.DummyInternalVariables, Buffer, CallbackInfo, ConcreteJavaProxy, DynamicLibrary, DynamicLibrary.Symbol, Enum, FiberLibrary.Fiber, FileDescriptorIO, Function, IncludedModuleWrapper, InterfaceJavaProxy, JavaAccessibleObject, JavaArray, JavaCallable, JavaClass, JavaConstructor, JavaField, JavaMethod, JavaObject, JavaProxy, JavaProxyClass, JavaProxyClass.ProxyMethodImpl, JavaProxyConstructor, JavaProxyReflectionObject, JFFIInvoker, JRubyObjectInputStream, MapJavaProxy, MappedType, MemoryPointer, MetaClass, MethodMissing, NativeException, Pointer, PsychEmitter, PsychParser, RubyArray, RubyBasicObject, RubyBasicSocket, RubyBigDecimal, RubyBignum, RubyBinding, RubyBoolean, RubyClass, RubyClassPathVariable, RubyComplex, RubyContinuation, RubyConverter, RubyData, RubyDigest.DigestBase, RubyDigest.DigestClass, RubyDir, RubyEncoding, RubyEnumerator, RubyException, RubyFile, RubyFileStat, RubyFixnum, RubyFloat, RubyGlobal.CaseInsensitiveStringOnlyRubyHash, RubyGlobal.StringOnlyRubyHash, RubyHash, RubyIconv, RubyIconv.RubyFailure, RubyInteger, RubyIO, RubyIPSocket, RubyJRuby.JRubyExecutionContextLocal, RubyJRuby.JRubyFiberLocal, RubyJRuby.JRubyThreadLocal, RubyLocalJumpError, RubyMatchData, RubyMethod, RubyModule, RubyNameError, RubyNameError.RubyNameErrorMessage, RubyNil, RubyNoMethodError, RubyNumeric, RubyObject, RubyObject.Data, RubyProc, RubyProcess.RubyStatus, RubyRandom, RubyRange, RubyRational, RubyRegexp, RubySocket, RubyString, RubyStringIO, RubyStringScanner, RubyStruct, RubySymbol, RubySystemCallError, RubySystemExit, RubyTCPServer, RubyTCPSocket, RubyTempfile, RubyThread, RubyThreadGroup, RubyTime, RubyTuple, RubyUDPSocket, RubyUnboundMethod, RubyUNIXServer, RubyUNIXSocket, RubyYielder, RubyZlib.Deflate, RubyZlib.Inflate, RubyZlib.RubyGzipFile, RubyZlib.RubyGzipReader, RubyZlib.RubyGzipWriter, RubyZlib.ZStream, Struct, StructByReference, StructByValue, StructLayout, StructLayout.ArrayField, StructLayout.ArrayProxy, StructLayout.CharArrayProxy, StructLayout.EnumField, StructLayout.Field, StructLayout.FunctionField, StructLayout.InnerStructField, StructLayout.MappedField, StructLayout.NumberField, StructLayout.PointerField, ThreadLibrary.ConditionVariable, ThreadLibrary.Mutex, ThreadLibrary.Queue, ThreadLibrary.SizedQueue, Type, Type.Array, Type.Builtin, VariadicInvoker, WeakRef

public interface InternalVariables

Interface that gives access to the internal variables of a Ruby object.

Author:
headius

Method Summary
 java.lang.Object fastGetInternalVariable(java.lang.String internedName)
          Returns the named internal variable if present, else null.
 boolean fastHasInternalVariable(java.lang.String internedName)
          Returns true if object has the named internal variable.
 void fastSetInternalVariable(java.lang.String internedName, java.lang.Object value)
          Sets the named internal variable to the specified value.
 java.lang.Object getInternalVariable(java.lang.String name)
          Returns the named internal variable if present, else null.
 boolean hasInternalVariable(java.lang.String name)
          Returns true if object has the named internal variable.
 java.lang.Object removeInternalVariable(java.lang.String name)
          Removes the named internal variable, if present, returning its value.
 void setInternalVariable(java.lang.String name, java.lang.Object value)
          Sets the named internal variable to the specified value.
 

Method Detail

hasInternalVariable

boolean hasInternalVariable(java.lang.String name)
Returns true if object has the named internal variable. Use only for internal variables (not ivar/cvar/constant).

Parameters:
name - the name of an internal variable
Returns:
true if object has the named internal variable.

fastHasInternalVariable

boolean fastHasInternalVariable(java.lang.String internedName)
Returns true if object has the named internal variable. Use only for internal variables (not ivar/cvar/constant). The supplied name must have been previously interned.

Parameters:
internedName - the interned name of an internal variable
Returns:
true if object has the named internal variable, else false

getInternalVariable

java.lang.Object getInternalVariable(java.lang.String name)
Returns the named internal variable if present, else null. Use only for internal variables (not ivar/cvar/constant).

Parameters:
name - the name of an internal variable
Returns:
the named internal variable if present, else null

fastGetInternalVariable

java.lang.Object fastGetInternalVariable(java.lang.String internedName)
Returns the named internal variable if present, else null. Use only for internal variables (not ivar/cvar/constant). The supplied name must have been previously interned.

Parameters:
internedName - the interned name of an internal variable
Returns:
he named internal variable if present, else null

setInternalVariable

void setInternalVariable(java.lang.String name,
                         java.lang.Object value)
Sets the named internal variable to the specified value. Use only for internal variables (not ivar/cvar/constant).

Parameters:
name - the name of an internal variable
value - the value to be set

fastSetInternalVariable

void fastSetInternalVariable(java.lang.String internedName,
                             java.lang.Object value)
Sets the named internal variable to the specified value. Use only for internal variables (not ivar/cvar/constant). The supplied name must have been previously interned.

Parameters:
internedName - the interned name of an internal variable
value - the value to be set

removeInternalVariable

java.lang.Object removeInternalVariable(java.lang.String name)
Removes the named internal variable, if present, returning its value. Use only for internal variables (not ivar/cvar/constant).

Parameters:
name - the name of the variable to remove
Returns:
the value of the remove variable, if present; else null


Copyright © 2002-2009 JRuby Team. All Rights Reserved.