dynamiC  0.1
Data Structures | Typedefs | Enumerations | Functions | Variables
dynamic_types.h File Reference

Definition of internal settings and applied data types. More...

#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  dynamic
 Basic container for dynamic data types. More...
 
struct  dynamic_list
 Basic container for lists. More...
 
struct  dynamic_dict
 Basic container for dictionaries. More...
 
struct  dynamic_function
 Basic container/pointer to functions. More...
 

Typedefs

typedef char dyn_char
 Basic 8bit signed integer.
 
typedef unsigned char dyn_byte
 Basic 8bit integer (0 - 255)
 
typedef char * dyn_str
 Standard dynamic C string.
 
typedef const char * dyn_const_str
 Standard dynamic C const string.
 
typedef uint16_t dyn_ushort
 16bit unsigned integer
 
typedef int16_t dyn_short
 16bit signed integer
 
typedef int32_t dyn_int
 32bit signed integer, standard Integer type.
 
typedef uint32_t dyn_uint
 32bit unsigned integer
 
typedef float dyn_float
 basic float definition (32 bit)
 
typedef struct dynamic dyn_c
 common dynamic data type
 
typedef struct dynamic_list dyn_list
 common dynamic list data type
 
typedef struct dynamic_dict dyn_dict
 common dynamic dictionary data type
 
typedef struct dynamic_function dyn_fct
 common dynamic procedure/bytecode data type
 

Enumerations

enum  trilean { DYN_FALSE = 0, DYN_TRUE = 1, DYN_NONE = -1 }
 basic return type for truth values More...
 
enum  TYPE {
  NONE, BOOL, BYTE, INTEGER,
  FLOAT, STRING, LIST, SET,
  DICT, FUNCTION, EXTERN, REFERENCE,
  REFERENCE2, MISCELLANEOUS
}
 Basic data type definitions. More...
 

Functions

struct dynamic __attribute__ ((packed))
 

Variables

union {
   dyn_char   b
 boolean value
 
   dyn_int   i
 basic integer
 
   dyn_float   f
 float value
 
   dyn_str   str
 pointer to character-array
 
   dyn_list *   list
 pointer to dynamic list
 
   dyn_dict *   dict
 pointer to dynamic dictionary
 
   dyn_fct *   fct
 pointer to function
 
   const void *   ex
 external (pointer to everything)
 
   dyn_c *   ref
 reference pointer to dynamic elements
 
data
 
char type
 type definition More...
 
dyn_ushort length
 elements in use
 
dyn_ushort space
 elements available
 
dyn_ccontainer
 pointer to an array of dynamic elements
 
dyn_strkey
 array to C strings used as identifiers
 
dyn_c value
 dynamic element of type dyn_list
 
void * ptr
 pointer to function
 
dyn_str info
 info string
 

Detailed Description

Definition of internal settings and applied data types.

Author
André Dietrich
Date
9 April 2016

This project is released under the MIT-License.

Definition in file dynamic_types.h.

Enumeration Type Documentation

◆ trilean

enum trilean

basic return type for truth values

Enumerator
DYN_FALSE 

represents boolean false

DYN_TRUE 

represents boolean true

DYN_NONE 

represents a third unknown state, which is not true or false

Definition at line 22 of file dynamic_types.h.

22  {
23  DYN_FALSE = 0,
24  DYN_TRUE = 1,
25  DYN_NONE = -1
26 } trilean;
represents boolean false
Definition: dynamic_types.h:23
represents boolean true
Definition: dynamic_types.h:24
represents a third unknown state, which is not true or false
Definition: dynamic_types.h:25
trilean
basic return type for truth values
Definition: dynamic_types.h:22

◆ TYPE

enum TYPE

Basic data type definitions.

Enumerator
NONE 

None type without any value.

BOOL 

Boolean 0==False, 1==True.

BYTE 

not used

INTEGER 

signed integer 32 bit

FLOAT 

float 32 bit

STRING 

char*

LIST 

list of type dyn_list

SET 

set of type dyn_list

DICT 

dictionary of type dyn_dict

FUNCTION 

function pointer of type dyn_fct

EXTERN 

void*

REFERENCE 

dyn_c* for internal usage only

REFERENCE2 

dyn_c*, explicite reference

MISCELLANEOUS 

can be used for different purposes

Definition at line 60 of file dynamic_types.h.

60  {
61  NONE,
62  BOOL,
63  BYTE,
64  INTEGER,
65  FLOAT,
66  STRING,
67  LIST,
68  SET,
69  DICT,
70 // TEMP, ///< not used
71  FUNCTION,
72  EXTERN,
73  REFERENCE,
74  REFERENCE2,
76 } TYPE;
float 32 bit
Definition: dynamic_types.h:65
dictionary of type dyn_dict
Definition: dynamic_types.h:69
dyn_c* for internal usage only
Definition: dynamic_types.h:73
not used
Definition: dynamic_types.h:63
set of type dyn_list
Definition: dynamic_types.h:68
can be used for different purposes
Definition: dynamic_types.h:75
void*
Definition: dynamic_types.h:72
function pointer of type dyn_fct
Definition: dynamic_types.h:71
Boolean 0==False, 1==True.
Definition: dynamic_types.h:62
list of type dyn_list
Definition: dynamic_types.h:67
signed integer 32 bit
Definition: dynamic_types.h:64
char*
Definition: dynamic_types.h:66
None type without any value.
Definition: dynamic_types.h:61
dyn_c*, explicite reference
Definition: dynamic_types.h:74
TYPE
Basic data type definitions.
Definition: dynamic_types.h:60

Variable Documentation

◆ type

dyn_ushort type

type definition

0 basic C-fct, 1 system C-fct, else procedure (length of bytecode)

Definition at line 69 of file dynamic_types.h.