fabric.lang
Class WrappedJavaInlineable<T>

java.lang.Object
  extended by fabric.lang.WrappedJavaInlineable<T>
All Implemented Interfaces:
Inlineable, JavaInlineable, Object

public class WrappedJavaInlineable<T>
extends java.lang.Object
implements JavaInlineable


Nested Class Summary
 
Nested classes/interfaces inherited from interface fabric.lang.JavaInlineable
JavaInlineable._Proxy
 
Nested classes/interfaces inherited from interface fabric.lang.Object
Object._Impl, Object._Static
 
Field Summary
 T obj
           
 
Method Summary
 void $forceRenumber(long onum)
           This method changes the onum of the object.
 long $getOnum()
          The object's onum.
 Object._Proxy $getProxy()
          A proxy for this object.
 Store $getStore()
          The store where the object resides.
 T $unwrap()
          Unwraps a wrapped Java inlineable.
static java.lang.Object $unwrap(Object obj)
          Given a Fabric object, returns an unwrapped version of that object.
static Object $wrap(java.lang.Object obj)
          Given an object that, in the Fabric type system, implements fabric.lang.JavaInlineable, returns a wrapped version of that object.
static ObjectArray $wrap(Store store, Label label, java.lang.Object[] array)
          Creates a Fabric version of the given array.
 Statistics createStatistics()
          Creates a Statistics object to determine promises for this Object.
 boolean equals(Object o)
          Whether this object is "equal" to another object.
 boolean equals(java.lang.Object obj)
           
 Object fetch()
          Fetches the object if this is a proxy; returns itself if it's an impl.
 Label get$label()
          Label for this object
 int hashCode()
           
 boolean idEquals(Object other)
          Whether this object has the same identity as another object.
 Label set$label(Label label)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

obj

public final T obj
Method Detail

$wrap

public static final Object $wrap(java.lang.Object obj)
Given an object that, in the Fabric type system, implements fabric.lang.JavaInlineable, returns a wrapped version of that object. If the given object is already wrapped, it is returned unmodified.


$unwrap

public static final java.lang.Object $unwrap(Object obj)
Given a Fabric object, returns an unwrapped version of that object. If the given object is already unwrapped, it is returned unmodified.


$wrap

public static ObjectArray $wrap(Store store,
                                Label label,
                                java.lang.Object[] array)
Creates a Fabric version of the given array. All elements of the given array should be instances of fabric.lang.Object from the Fabric type system's point of view.


$getStore

public Store $getStore()
Description copied from interface: Object
The store where the object resides.

Specified by:
$getStore in interface Object

$getOnum

public long $getOnum()
Description copied from interface: Object
The object's onum.

Specified by:
$getOnum in interface Object

get$label

public Label get$label()
Description copied from interface: Object
Label for this object

Specified by:
get$label in interface Object

set$label

public Label set$label(Label label)

idEquals

public boolean idEquals(Object other)
Description copied from interface: Object
Whether this object has the same identity as another object.

Specified by:
idEquals in interface Object

$getProxy

public Object._Proxy $getProxy()
Description copied from interface: Object
A proxy for this object.

Specified by:
$getProxy in interface Object

fetch

public Object fetch()
Description copied from interface: Object
Fetches the object if this is a proxy; returns itself if it's an impl.

Specified by:
fetch in interface Object

$unwrap

public T $unwrap()
Description copied from interface: Object
Unwraps a wrapped Java inlineable.

Specified by:
$unwrap in interface Object

equals

public boolean equals(Object o)
Description copied from interface: Object
Whether this object is "equal" to another object.

Specified by:
equals in interface Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

$forceRenumber

public void $forceRenumber(long onum)
Description copied from interface: Object

This method changes the onum of the object. Unless if you really know what you're doing, you should not call this, as it leaves the system in an inconsistent state.

This method is used to initialize object databases with objects at well-known onums (e.g., naming map and store principal).

Specified by:
$forceRenumber in interface Object

createStatistics

public Statistics createStatistics()
Description copied from interface: Object
Creates a Statistics object to determine promises for this Object.

Specified by:
createStatistics in interface Object