Codemesh Runtime v3 C++ API Reference
3.9.205
|
The wrapper type for the Java char[]
type.
More...
#include <xmog_java_array.h>
Public Types | |
typedef xmog_array_iterator< xmog_java_char_array > | iterator |
The iterator type for arrays of char type. | |
typedef xmog_char | 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_char_array () | |
Creates an array instance that does not refer to any Java object. | |
xmog_java_char_array (const xmog_null &) | |
Creates an array instance that does not refer to any Java object. | |
xmog_java_char_array (const xmog_java_char_array &, xmog_localenv *env=NULL) | |
Creates an array instance that refers to the same Java instance as the given array. | |
xmog_java_char_array (xmog_java_array *_ref, jint _index) | |
Creates an array instance that represents an array element itself. | |
xmog_java_char_array (xmog_java_ref *_clazz_ref_array, xmog_java_dynamic *_dynamic, xmog_flags _flags=xmog_base::GLOBAL) | |
Creates an indirect array instance. | |
xmog_java_char_array (xmog_base *_delegate, bool _owns_delegate=true) | |
Creates an array instance that delegates to another instance. | |
xmog_java_char_array (jobject _local, xmog_flags _flags) | |
Creates an array instance that represents a pre-existing JNI reference. | |
xmog_java_char_array (jint size, xmog_localenv *env=NULL, xmog_flags=xmog_base::GLOBAL) | |
Creates a new array instance of a given size. More... | |
xmog_java_char_array (jchar *arr, jsize size, xmog_localenv *env=NULL, xmog_flags=xmog_base::GLOBAL) | |
Creates a new array instance from a JNI jchar []. More... | |
iterator | begin () |
Returns an iterator pointing to the first array element. | |
iterator | end () |
Returns an iterator pointing to after the last array element. | |
void | from_native (jchar *src_arr, jint dest_start, jsize length, xmog_localenv *env=NULL) |
Copies elements from a native array into the Java array. More... | |
void | to_native (jchar *dest_arr, jint src_start, jsize length, xmog_localenv *env=NULL) |
Copies elements from the Java array into a native array. More... | |
xmog_char | operator[] (jint index) |
Returns a proxy to a char array element, usable as a lhs-value. More... | |
void | set (jint index, jchar v, xmog_localenv *env=NULL) |
Sets a value into the array's specified element. More... | |
jchar | operator[] (jint index) const |
Returns the value of an array element. More... | |
jchar | get (jint index, xmog_localenv *env) const |
Returns the value of an array element. More... | |
xmog_java_char_array & | operator= (const xmog_java_char_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_char_array | 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. | |
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_array | |
void | copy_ (const xmog_java_array &_rhs, xmog_localenv *env=NULL) |
Updates this instance to reflect the given instance's state. | |
The wrapper type for the Java char[]
type.
xmog_java_char_array::xmog_java_char_array | ( | jint | size, |
xmog_localenv * | env = NULL , |
||
xmog_flags | = xmog_base::GLOBAL |
||
) |
Creates a new array instance of a given size.
size | the newly created array's size. |
env | the local call environment. May be NULL . |
xmog_java_char_array::xmog_java_char_array | ( | jchar * | arr, |
jsize | size, | ||
xmog_localenv * | env = NULL , |
||
xmog_flags | = xmog_base::GLOBAL |
||
) |
Creates a new array instance from a JNI jchar
[].
arr | the native jchar []. |
size | the number of elements in the array. |
env | the local call environment. May be NULL . |
|
static |
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). void xmog_java_char_array::from_native | ( | jchar * | src_arr, |
jint | dest_start, | ||
jsize | length, | ||
xmog_localenv * | env = NULL |
||
) |
Copies elements from a native array into the Java array.
src_arr | a pointer to the native array that provides the elements. |
dest_start | the index into the Java array to which we start copying. |
length | the number of elements to copy. |
env | the local call environment. May be NULL . |
jchar xmog_java_char_array::get | ( | jint | index, |
xmog_localenv * | env | ||
) | const |
Returns the value of an array element.
This method provides the same functionality as the subscript operator, but coupled with the ability to pass in a local call environment for a slight edge in performance.
index | the array element index. |
env | the local call environment. Default value is NULL . |
xmog_char xmog_java_char_array::operator[] | ( | jint | index | ) |
Returns a proxy to a char
array element, usable as a lhs-value.
index | the array element index. |
jchar xmog_java_char_array::operator[] | ( | jint | index | ) | const |
Returns the value of an array element.
index | the array element index. |
void xmog_java_char_array::set | ( | jint | index, |
jchar | v, | ||
xmog_localenv * | env = NULL |
||
) |
Sets a value into the array's specified element.
This method allows direct assignment into an array element while optionally using a provided local call environment. Consequently it will be higher performing than the subscript operator which provides similar functionality in combination with an assignment operation.
index | the array element index. |
v | the new value. |
env | the local call environment. Default value is NULL . |
void xmog_java_char_array::to_native | ( | jchar * | dest_arr, |
jint | src_start, | ||
jsize | length, | ||
xmog_localenv * | env = NULL |
||
) |
Copies elements from the Java array into a native array.
dest_arr | a pointer to the native array that will receive the elements. |
src_start | the index in the Java array from which we start copying. |
length | the number of elements to copy. |
env | the local call environment. May be NULL . |