Package org.lwjgl.llvm
Class CXString
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.llvm.CXString
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,org.lwjgl.system.NativeResource
,org.lwjgl.system.Pointer
public class CXString extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResource
A character string.The
CXString
type is used to return strings from the interface when the ownership of that string might differ from one call to the next. UsegetCString
to retrieve the string data and, once finished with the string data, calldisposeString
to free the string.Layout
struct CXString { void const * data; unsigned private_flags; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CXString.Buffer
An array ofCXString
structs.
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNOF
The struct alignment in bytes.static int
DATA
PRIVATE_FLAGSThe struct member offsets.static int
SIZEOF
The struct size in bytes.
-
Constructor Summary
Constructors Constructor Description CXString(java.nio.ByteBuffer container)
Creates aCXString
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static CXString
calloc()
Returns a newCXString
instance allocated withmemCalloc
.static CXString.Buffer
calloc(int capacity)
Returns a newCXString.Buffer
instance allocated withmemCalloc
.static CXString
callocStack()
Returns a newCXString
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static CXString.Buffer
callocStack(int capacity)
Returns a newCXString.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static CXString.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newCXString.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static CXString
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newCXString
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static CXString
create()
Returns a newCXString
instance allocated withBufferUtils
.static CXString.Buffer
create(int capacity)
Returns a newCXString.Buffer
instance allocated withBufferUtils
.static CXString
create(long address)
Returns a newCXString
instance for the specified memory address.static CXString.Buffer
create(long address, int capacity)
Create aCXString.Buffer
instance at the specified memory.static CXString
createSafe(long address)
static CXString.Buffer
createSafe(long address, int capacity)
java.nio.ByteBuffer
data(int capacity)
Returns aByteBuffer
view of the data pointed to by thedata
field.static CXString
malloc()
Returns a newCXString
instance allocated withmemAlloc
.static CXString.Buffer
malloc(int capacity)
Returns a newCXString.Buffer
instance allocated withmemAlloc
.static CXString
mallocStack()
Returns a newCXString
instance allocated on the thread-localMemoryStack
.static CXString.Buffer
mallocStack(int capacity)
Returns a newCXString.Buffer
instance allocated on the thread-localMemoryStack
.static CXString.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newCXString.Buffer
instance allocated on the specifiedMemoryStack
.static CXString
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newCXString
instance allocated on the specifiedMemoryStack
.static java.nio.ByteBuffer
ndata(long struct, int capacity)
Unsafe version ofdata
.static int
nprivate_flags(long struct)
Unsafe version ofprivate_flags()
.int
private_flags()
Returns the value of theprivate_flags
field.int
sizeof()
-
-
-
Constructor Detail
-
CXString
public CXString(java.nio.ByteBuffer container)
Creates aCXString
instance at the current position of the specifiedByteBuffer
container. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Detail
-
sizeof
public int sizeof()
- Specified by:
sizeof
in classorg.lwjgl.system.Struct
-
data
public java.nio.ByteBuffer data(int capacity)
Returns aByteBuffer
view of the data pointed to by thedata
field.- Parameters:
capacity
- the number of elements in the returned buffer
-
private_flags
public int private_flags()
Returns the value of theprivate_flags
field.
-
malloc
public static CXString malloc()
Returns a newCXString
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static CXString calloc()
Returns a newCXString
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static CXString create()
Returns a newCXString
instance allocated withBufferUtils
.
-
create
public static CXString create(long address)
Returns a newCXString
instance for the specified memory address.
-
createSafe
@Nullable public static CXString createSafe(long address)
-
malloc
public static CXString.Buffer malloc(int capacity)
Returns a newCXString.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static CXString.Buffer calloc(int capacity)
Returns a newCXString.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static CXString.Buffer create(int capacity)
Returns a newCXString.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static CXString.Buffer create(long address, int capacity)
Create aCXString.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static CXString.Buffer createSafe(long address, int capacity)
-
mallocStack
public static CXString mallocStack()
Returns a newCXString
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static CXString callocStack()
Returns a newCXString
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static CXString mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newCXString
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static CXString callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newCXString
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static CXString.Buffer mallocStack(int capacity)
Returns a newCXString.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static CXString.Buffer callocStack(int capacity)
Returns a newCXString.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static CXString.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newCXString.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static CXString.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newCXString.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
ndata
public static java.nio.ByteBuffer ndata(long struct, int capacity)
Unsafe version ofdata
.
-
nprivate_flags
public static int nprivate_flags(long struct)
Unsafe version ofprivate_flags()
.
-
-