Codemesh Runtime v3 C++ API Reference
3.9.205
|
The object array template type to support arrays of proxy types. More...
#include <xmog_java_array.h>
Public Types | |
typedef xmog_array_iterator< xmog_java_array_template< ElementType > > | iterator |
The iterator type for arrays of object type. | |
typedef xmog_holder_template< ElementType > | value_type |
The type returned by the dereference operations. | |
typedef ptrdiff_t | difference_type |
The type used to represent pointer differences. | |
Public Types inherited from xmog_base | |
enum | flags { STAND_ALONE = 1, ARRAY_ELEMENT = 2, DYNAMIC = 4, DELEGATE = 8, LOCAL = 16, WEAK_GLOBAL = 32, GLOBAL = 64, REMOTE = 128, CACHING = 256, CACHE_INVALID = 512, CACHE_DIRTY = 1024, CACHE_LAZY_WRITE = 2048, OWNS_DELEGATE = 4096, STRING_DIRTY = 8192, STRING_PTR = 16384, STRING_WPTR = 32768, INDIRECT = 65536, NONVIRT = 131072, SUPPRESS_LOGGING = 262144, CATEGORY = 15, TYPE = 240, CACHE = 3840 } |
The possible flag values. More... | |
Public Member Functions | |
xmog_java_array_template () | |
Creates an array instance that does not represent a Java instance. | |
xmog_java_array_template (const xmog_null &) | |
Creates an array instance that does not represent a Java instance. | |
xmog_java_array_template (const xmog_java_array_template< ElementType > &_rhs, xmog_localenv *_env=NULL) | |
Creates an array instance that does represents the same Java instance as the given array instance. | |
XMOG_EXPLICIT | xmog_java_array_template (xmog_java_array *_ref, jint _index) |
Creates an array instance that represents an array element itself. | |
XMOG_EXPLICIT | xmog_java_array_template (xmog_java_ref *_clazz_ref_array, xmog_java_dynamic *_dynamic, xmog_flags _flags=xmog_base::GLOBAL) |
Creates an indirect array instance. | |
XMOG_EXPLICIT | xmog_java_array_template (xmog_base *_delegate, bool bOwnsDelegate) |
Creates an array instance that delegates to another instance. More... | |
XMOG_EXPLICIT | xmog_java_array_template (jobject _local, xmog_flags _flags) |
Creates an array instance that represents a pre-existing JNI reference. | |
XMOG_EXPLICIT | xmog_java_array_template (jint size, xmog_localenv *env=NULL, xmog_flags flags=xmog_base::GLOBAL) |
Creates a new object array instance of a given length. More... | |
iterator | begin () |
Returns an iterator pointing to the first array element. | |
iterator | end () |
Returns an iterator pointing to after the last array element. | |
xmog_java_array_template< ElementType > & | operator= (const xmog_java_array_template< ElementType > &_rhs) |
Sets the given Java array reference into this instance. | |
xmog_holder_template< ElementType > | operator[] (jint index) |
Returns the array element of the given index. More... | |
xmog_holder_template< ElementType > | operator[] (jint index) const |
Returns the array element of the given index. | |
Public Member Functions inherited from xmog_java_object_array | |
xmog_java_object_array () | |
Creates an array instance that does not refer to any Java object. | |
xmog_java_object_array (const xmog_null &) | |
Creates an array instance that does not refer to any Java object. | |
xmog_java_object_array (const xmog_java_object_array &, xmog_localenv *env=NULL) | |
Creates an array instance that references the same Java object as the given object. | |
xmog_java_object_array (xmog_java_array *_ref, jint _index) | |
Creates an array instance that represents an array element itself. | |
xmog_java_object_array (xmog_java_ref *_clazz_ref_array, xmog_java_dynamic *_dynamic, xmog_flags _flags=xmog_base::GLOBAL) | |
Creates an indirect array instance. | |
xmog_java_object_array (xmog_base *_delegate, bool _owns_delegate=true) | |
Creates an array instance that delegates to another instance. | |
xmog_java_object_array (jobject _local, xmog_flags _flags) | |
Creates an array instance that represents a pre-existing JNI reference. | |
xmog_java_object_array (jint size, xmog_java_class *clazz, xmog_localenv *env=NULL, xmog_flags flags=xmog_base::GLOBAL) | |
Creates a new object array instance of a given length. More... | |
xmog_java_ref | operator[] (jint index) |
Returns a proxy to a long array element, usable as a lhs-value. More... | |
void | set (jint index, jobject v, xmog_localenv *env=NULL) |
Sets a value into the array's specified element. More... | |
jobject | operator[] (jint index) const |
Returns the value of an array element. More... | |
jobject | get (jint index, xmog_localenv *env) const |
Returns the value of an array element. More... | |
xmog_java_object_array & | operator= (const xmog_java_object_array &) |
Sets the given instance's array reference into this instance. | |
Public Member Functions inherited from xmog_java_array | |
xmog_java_array () | |
A default constructor to satisfy virtual inheritance semantics. | |
xmog_java_array (jobject array, xmog_flags flags, jint size=-1, xmog_localenv *env=NULL) | |
The constructor that creates an instance from an existing reference. More... | |
xmog_java_array (const xmog_null &) | |
The from null constructor. More... | |
xmog_java_array (const xmog_java_array &_rhs, xmog_localenv *env=NULL) | |
The copy constructor. More... | |
xmog_java_array (xmog_java_array *_arr, jint _index) | |
The array element constructor. More... | |
xmog_java_array (xmog_java_class *_clazz, xmog_java_dynamic *_dynamic, xmog_flags _flags) | |
The constructor that allows the dynamic resolution of class-related information. More... | |
xmog_java_array (xmog_base *_delegate, bool _owns_delegate=true) | |
The constructor that allows the creation of an instance to handle all requests by delegating to another instance. More... | |
xmog_java_array (xmog_java_ref *_ref, xmog_java_dynamic *_dynamic, xmog_flags _flags) | |
The constructor that allows the dynamic resolution of instance-related information. More... | |
~xmog_java_array () | |
The destructor invalidates the length field. | |
jint | get_length (xmog_localenv *env) const |
A higher performance alternative to querying the array length. More... | |
void | xmog_invalidate (xmog_localenv *env=NULL) |
Invalidates any cached values in the instance. More... | |
Public Member Functions inherited from xmog_java_ref | |
xmog_java_ref () | |
The default constructor. | |
xmog_java_ref (const xmog_null &) | |
The from null constructor. More... | |
xmog_java_ref (xmog_java_array *_arr, jint _index) | |
The array element constructor. More... | |
xmog_java_ref (xmog_java_class *_clazz, xmog_java_dynamic *_dynamic, xmog_flags _flags) | |
The constructor that allows the dynamic resolution of class-related information. More... | |
XMOG_EXPLICIT | xmog_java_ref (xmog_base *_delegate, bool _owns_delegate=true) |
The constructor that allows the creation of an instance to handle all requests by delegating to another instance. More... | |
xmog_java_ref (xmog_java_ref *_ref, xmog_java_dynamic *_dynamic, xmog_flags _flags) | |
The constructor that allows the dynamic resolution of instance-related information. More... | |
xmog_java_ref (jobject _local, xmog_flags _flags) | |
The constructor that sets an existing JNI reference into a wrapper instance. More... | |
~xmog_java_ref () | |
Deletes the reference we hold to the wrapped Java instance. | |
bool | operator== (const xmog_null &) const |
Compares the instance for equality with null . | |
bool | operator== (const xmog_java_ref &) const |
Compares the instance for equality with another instance. More... | |
bool | operator!= (const xmog_null &) const |
Compares the instance for inequality with null . | |
bool | operator!= (const xmog_java_ref &) const |
Compares the instance for inequality with another instance. More... | |
bool | operator! () const |
Returns true if the instance refers to null , false otherwise. | |
jboolean | xmog_equals (const xmog_java_ref &_rhs, xmog_localenv *env=NULL) |
Returns true if both instances are null or satisfy the equality test. More... | |
jint | xmog_hashCode (xmog_localenv *env=NULL) |
Returns the Java instance's hashCode. More... | |
jobject | xmog_toString (xmog_localenv *env=NULL) |
Returns the Java instance's toString() valus as a global reference. More... | |
virtual jobject | get_jobject_ (xmog_localenv *env=NULL) const |
Returns this instance's object reference. More... | |
virtual void | xmog_monitor_enter (xmog_localenv *env=NULL) const |
Attempts to enter into a lock on the object. | |
virtual void | xmog_monitor_exit (xmog_localenv *env=NULL) const |
Leaves a lock in the object. | |
Public Member Functions inherited from xmog_base | |
xmog_base () | |
The default contructor. More... | |
xmog_base (xmog_java_array *_ref, jint _index) | |
The constructor for Java array elements. More... | |
xmog_base (xmog_java_ref *_ref, xmog_java_dynamic *_dynamic, xmog_flags _flags) | |
The constructor for indirect and user-defined types. More... | |
xmog_base (xmog_java_class *_clazz, xmog_java_dynamic *_dynamic, xmog_flags _flags) | |
The constructor for indirect and user-defined types. More... | |
XMOG_EXPLICIT | xmog_base (xmog_base *_delegate, bool _owns_delegate=true) |
The constructor for delegating objects. More... | |
xmog_base (jobject _local, xmog_flags _flags) | |
The constructor for direct types. More... | |
virtual | ~xmog_base () |
The virtual destructor. | |
virtual void | copy_jobject_ (xmog_base *_rhs, xmog_localenv *env=NULL) |
Sets this instance's object reference to a duplicate of the given object's reference. More... | |
virtual jobject | get_owning_jobject_ (xmog_localenv *env=NULL) |
Returns this instance's owner. More... | |
virtual jobject | get_released_local_jobject_ (xmog_localenv *env=NULL) const |
Returns this instance's object reference as a local reference and removes it from this instance's ownership. More... | |
virtual bool | is_null_ (xmog_localenv *env=NULL) const |
Tests the instance for null . | |
virtual bool | is_same_ (const xmog_base &_rhs, xmog_localenv *env=NULL) const |
Tests whether this instance references the same instance as the other instance. | |
virtual jobject | duplicate_jobject_ (xmog_localenv *env=NULL) const |
Returns a duplicate of this instance's object reference. More... | |
virtual void | set_jobject_ (xmog_base *_rhs, xmog_localenv *env=NULL) |
Sets this instance's object reference to the given object's reference. More... | |
virtual void | transfer_jobject_ (xmog_base *_rhs, xmog_localenv *env=NULL) |
Sets this instance's object reference to the given object's reference and removes ownership from the other object. More... | |
virtual xmog_base * | xmog_to_ (xmog_flags flags, xmog_localenv *env=NULL) |
Converts a reference from one reference type to another. More... | |
virtual xmog_base * | xmog_fill_with_standalone_for_ (xmog_base *_rhs, xmog_localenv *env=NULL) |
Populates the object with a stand-alone reference based on another object. More... | |
virtual xmog_java_class * | xmog_get_java_peer (xmog_localenv *env=NULL) |
Returns NULL if the type does not have a Java peer type, a pointer to the type's xmog_java_class otherwise. More... | |
virtual int | xmog_create_java_peer (xmog_java_class *clazz, xmog_localenv *env=NULL, xmog_flags flags=xmog_base::GLOBAL) |
Creates a Java peer instance for this type. More... | |
virtual int | xmog_to_java_peer (xmog_localenv *env=NULL) |
Sets the native instance's state into the Java peer instance. More... | |
virtual void | xmog_lazy_write (xmog_localenv *env=NULL) |
Performs a lazy write operation on the instance. More... | |
void | release_standalone (xmog_localenv *env=NULL) |
Releases the internally maintained object if the instance is a stand-alone (direct) instance and not an indirect instance. More... | |
void | release_delegate () |
Releases the internally maintained delegate. | |
Static Public Member Functions | |
static xmog_java_array_template< ElementType > | dyna_cast (const xmog_java_ref &_rhs, xmog_localenv *p_lxenv=NULL, xmog_flags flags=xmog_base::GLOBAL) |
A framework method which allows a "cast" of the given object to this array type. More... | |
static xmog_java_dynamic * | get_dynamic () |
Returns an xmog_java_dynamic instance that can be used to access the array elements of this type. | |
static xmog_java_class * | get_class () |
Returns the proxy wrapper instance for this array type. | |
static xmog_java_class * | get_element_java_class () |
Returns the proxy wrapper instance for this array's element type. | |
Static Public Member Functions inherited from xmog_java_object_array | |
static xmog_java_dynamic * | get_dynamic () |
Returns an xmog_java_dynamic instance that can be used to access the array elements of this type. | |
static xmog_java_class * | get_class () |
Returns the proxy wrapper instance for this array type. | |
static xmog_java_class * | get_element_java_class () |
Returns the proxy wrapper instance for this array's element type. | |
Additional Inherited Members | |
Public Attributes inherited from xmog_java_array | |
xmog_java_array_size | length |
The array length. More... | |
Public Attributes inherited from xmog_base | |
XMOG_JOBJECT_HOLDER | owner_ |
The owner or identity of the object. More... | |
union { | |
xmog_java_dynamic * dynamic_ | |
A pointer to an object that can access indirectly specified information. | |
jint index_ | |
The index of an array element. | |
}; | |
Data or object that provides assistance in accessing indirectly specified elements. More... | |
xmog_flags | flags_ |
The flags governing the type and other housekeeping information. | |
Protected Member Functions inherited from xmog_java_object_array | |
jarray | create (jint size, xmog_java_class *clazz, xmog_flags flags, xmog_localenv *env) |
Creates an array instance of a certain element type and a certain size. More... | |
Protected Member Functions inherited from xmog_java_array | |
void | copy_ (const xmog_java_array &_rhs, xmog_localenv *env=NULL) |
Updates this instance to reflect the given instance's state. | |
The object array template type to support arrays of proxy types.
|
inline |
Creates an array instance that delegates to another instance.
_delegate | the instance to which all calls will be delegated. |
bOwnsDelegate | true if the proxy object owns the delegate, false otherwise. |
|
inline |
Creates a new object array instance of a given length.
size | the length of the new array. |
env | the optional environment. May be NULL . |
flags | the optional flags. Defaults to xmog_base::GLOBAL. |
|
inlinestatic |
A framework method which allows a "cast" of the given object to this array type.
You use this method in all places where you would use an explicit class cast in Java. It creates a new instance of the correct type and sets the peer object into it if the peer instance is type compatible. If the peer instance is not type compatible, the newly created object will refer to null
.
_rhs | a proxy instance which we wish to "cast" to this type. |
p_lxenv | the local call environment. The default value is NULL . |
flags | the flags that allow control over the reference type and other internal matters. The default value is xmog_base::GLOBAL. |
null
(if they are not type-compatible). References xmog_java_array_template< ElementType >::get_class(), and xmog_localenv::get_instance().
|
inline |
Returns the array element of the given index.
index | the array index. |