Zen API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kString.h
Go to the documentation of this file.
1 
10 #ifndef K_API_STRING_H
11 #define K_API_STRING_H
12 
13 #include <kApi/kApiDef.h>
14 #include <kApi/Data/kString.x.h>
15 
28 //typedef kObject kString; --forward-declared in kApiDef.x.h
29 
39 kFx(kStatus) kString_Construct(kString* str, const kChar* content, kAlloc allocator);
40 
49 kFx(kStatus) kString_Assign(kString str, kString source);
50 
58 kFx(kStatus) kString_Clear(kString str);
59 
70 kFx(kStatus) kString_Reserve(kString str, kSize minimumCapacity);
71 
89 kFx(kStatus) kString_SetLength(kString str, kSize length);
90 
99 kFx(kStatus) kString_Set(kString str, const kChar* content);
100 
111 kFx(kStatus) kString_Setf(kString str, const kChar* format, ...);
112 
122 kFx(kStatus) kString_Setvf(kString str, const kChar* format, kVarArgList argList);
123 
132 kFx(kStatus) kString_Add(kString str, const kChar* content);
133 
144 kFx(kStatus) kString_Addf(kString str, const kChar* format, ...);
145 
155 kFx(kStatus) kString_Addvf(kString str, const kChar* format, kVarArgList argList);
156 
167 kFx(kStatus) kString_AddSubstring(kString str, const kChar* content, kSize start, kSize count);
168 
182 kFx(k32s) kString_Compare(kString str, const kChar* content);
183 
192 kFx(kBool) kString_Equals(kString str, const kChar* content);
193 
201 kFx(kStatus) kString_Trim(kString str);
202 
215 kFx(kStatus) kString_Split(kString str, const kChar* delimiters, kArrayList* tokens, kAlloc allocator);
216 
225 {
226  kObj(kString, str);
227 
228  return obj->chars;
229 }
230 
242 {
243  kObj(kString, str);
244 
245  return obj->length;
246 }
247 
256 {
257  kObj(kString, str);
258 
259  return obj->capacity;
260 }
261 
262 #endif
kStatus kString_Set(kString str, const kChar *content)
Sets the content of the string.
kStatus kString_Add(kString str, const kChar *content)
Appends content to the string.
kStatus kString_Setf(kString str, const kChar *format,...)
Sets the content of the string using a printf-like format string and arguments.
kBool kString_Equals(kString str, const kChar *content)
Compares this string to another character sequence to determine equality.
Represents an unsigned integer that can store a pointer address.
Abstract base class for memory allocator types.
kStatus kString_Clear(kString str)
Sets the length of the string to zero.
#define kInlineFx(TYPE)
Inline method declaration helper.
Definition: kApiDef.h:26
kStatus kString_Addvf(kString str, const kChar *format, kVarArgList argList)
Variable-argument version of kString_Addf.
Represents a single unit (byte) in a UTF-8 character.
kStatus kString_Reserve(kString str, kSize minimumCapacity)
Ensures that capacity is reserved for at least the specified number of character units (excluding nul...
kStatus kString_Setvf(kString str, const kChar *format, kVarArgList argList)
Variable-argument version of kString_Setf.
#define kObj(TypeName_T, T_object)
Declares a local "obj" (this-pointer) variable and initializes it from a type-checked object handle...
Definition: kApiDef.h:2858
kStatus kString_Addf(kString str, const kChar *format,...)
Appends content to the string using a printf-like format string and arguments.
kChar * kString_Chars(kString str)
Returns a pointer to the internal character buffer.
Definition: kString.h:224
Core Zen type declarations.
Represents a 32-bit signed integer.
kStatus kString_Split(kString str, const kChar *delimiters, kArrayList *tokens, kAlloc allocator)
Splits this string into substrings using the supplied delimiters.
kSize kString_Capacity(kString str)
Returns the number of character units that can be stored without reallocation.
Definition: kString.h:255
Represents a character string.
kStatus kString_Construct(kString *str, const kChar *content, kAlloc allocator)
Constructs a kString object.
Represents a list implemented with a dynamic array.
Represents an error code.
k32s kString_Compare(kString str, const kChar *content)
Compares this string to another string.
kStatus kString_Assign(kString str, kString source)
Copies the source string content.
kStatus kString_AddSubstring(kString str, const kChar *content, kSize start, kSize count)
Appends a portion of another string to this string.
Represents a boolean value.
kStatus kString_SetLength(kString str, kSize length)
Explicitly sets the length of the string.
kSize kString_Length(kString str)
Returns the number of character units in the string buffer (excluding null-terminator).
Definition: kString.h:241
kStatus kString_Trim(kString str)
Removes leading and trailing whitespace.