310 case FLOAT:
return dyn->data.
f;
466 case FUNCTION:
return dyn_fct_copy ( dyn, copy );
468 default: *copy = *dyn;
dyn_c * ref
reference pointer to dynamic elements
dyn_ushort dyn_itoa_len(dyn_int i)
Calculates the number of required characters for integer to string (decimal) conversion, minus increases the value by one.
const char * dyn_const_str
Standard dynamic C const string.
dyn_list * list
pointer to dynamic list
int32_t dyn_int
32bit signed integer, standard Integer type.
dyn_float dyn_get_float(const dyn_c *dyn)
Return float value of a dynamic element.
dictionary of type dyn_dict
dyn_ushort dyn_strlen(dyn_const_str str)
Returns the length of an string.
void dyn_set_extern(dyn_c *dyn, const void *v)
Set dynamic element to point to an arbitrary value.
void dyn_strcpy(dyn_str destination, dyn_const_str source)
Copy string.
void dyn_set_none(dyn_c *dyn)
Set dynamic element to NONE.
void dyn_ftoa(dyn_str str, const dyn_float f)
Float to ASCII-string conversion (decimal).
uint32_t dyn_uint
32bit unsigned integer
#define DYN_IS_REFERENCE(dyn)
Check if dynamic element is of type REFERENCE.
struct dynamic_function dyn_fct
common dynamic procedure/bytecode data type
dyn_c* for internal usage only
void dyn_dict_string_add(const dyn_c *dict, dyn_str string)
Add the dict-string representation to string.
#define DYN_LIST_LEN(dyn)
Return list length.
dyn_int dyn_get_int(const dyn_c *dyn)
Return integer value of a dynamic element.
const void * dyn_get_extern(const dyn_c *dyn)
Return pointer, stored in dyn->data.ex.
trilean dyn_set_string(dyn_c *dyn, dyn_const_str v)
Set dynamic element to STRING.
trilean dyn_copy(const dyn_c *dyn, dyn_c *copy)
Deep copy dynamic element.
Dynamic data types as part of the SelectScript-VM implementation.
dyn_ushort space
elements available
can be used for different purposes
#define DYN_INIT(dyn)
Mandatory initialization for dynamic elements (NONE)
function pointer of type dyn_fct
#define DYN_LIST_GET_REF(dyn, i)
Return the reference to the ith element within a dynamic list.
struct dynamic_list dyn_list
common dynamic list data type
Boolean 0==False, 1==True.
dyn_ushort dyn_ftoa_len(const dyn_float f)
Calculates the number of required characters for float to string (decimal) conversion, minus increases the value by one.
dyn_ushort dyn_dict_string_len(const dyn_c *dict)
Calculate the required string length.
dyn_uint dyn_size(const dyn_c *dyn)
Return the number of allocated bytes.
dyn_str dyn_get_string(const dyn_c *dyn)
Return string representation value of a dynamic element.
trilean dyn_get_bool(const dyn_c *dyn)
Return boolean value of an dynamic element.
char dyn_char
Basic 8bit signed integer.
dyn_fct * fct
pointer to function
#define DYN_TYPE(dyn)
Return type value of a dynamic element.
#define DYN_DICT_LEN(dyn)
Return number of elements within a dictionary.
uint16_t dyn_ushort
16bit unsigned integer
void dyn_string_add(const dyn_c *dyn, dyn_str string)
Add string representation of dynamic element to string.
void dyn_move(dyn_c *from, dyn_c *to)
Move dynamic element to new reference, from is of type NONE afterwards.
void dyn_itoa(dyn_str str, dyn_int i)
Integer to ASCII-string conversion.
None type without any value.
void dyn_set_bool(dyn_c *dyn, const dyn_char v)
Set dynamic element to BOOL (DYN_TRUE or DYN_FALSE)
dyn_c*, explicite reference
TYPE
Basic data type definitions.
void dyn_set_float(dyn_c *dyn, const dyn_float v)
Set dynamic element to FLOAT.
dyn_ushort dyn_string_len(const dyn_c *dyn)
Calculate length of string representation of dynamic element.
dyn_dict * dict
pointer to dynamic dictionary
dyn_c value
dynamic element of type dyn_list
trilean dyn_dict_copy(const dyn_c *dict, dyn_c *copy)
Copy the entire dict.
void dyn_strcat(dyn_str destination, dyn_const_str source)
Concatenate strings.
dyn_str * key
array to C strings used as identifiers
dyn_c * ref
reference pointer to dynamic elements
trilean
basic return type for truth values
trilean dyn_list_copy(const dyn_c *list, dyn_c *copy)
Make a deep copy of the entire list.
dyn_ushort dyn_length(const dyn_c *dyn)
Reterns the length of an element.
void dyn_set_ref(dyn_c *ref, dyn_c *orig)
Set dynamic element as reference to another dynamic element.
struct dynamic_dict dyn_dict
common dynamic dictionary data type
void dyn_dict_free(dyn_c *dict)
Free all allocated memory.
void dyn_list_string_add(const dyn_c *list, dyn_str str)
Add string representation of a list to str.
float dyn_float
basic float definition (32 bit)
void dyn_free(dyn_c *dyn)
free allocated memory
const void * ex
external (pointer to everything)
void dyn_list_free(dyn_c *list)
Free the allocated memory of the entire list and set it to NONE.
char * dyn_str
Standard dynamic C string.
void dyn_set_int(dyn_c *dyn, const dyn_int v)
Set dynamic element to INTEGER.
TYPE dyn_type(const dyn_c *dyn)
Return type value of a dynamic element.
dyn_ushort dyn_list_string_len(const dyn_c *list)
Return the length of the string representation of a list.
dyn_str str
pointer to character-array
struct dynamic dyn_c
common dynamic data type
Basic container for dynamic data types.