Objects

group objects

Typedefs

typedef struct ml_class_t ml_class_t
typedef struct ml_object_t ml_object_t
typedef struct ml_field_t ml_field_t
typedef struct ml_field_info_t ml_field_info_t

Functions

void ml_object_init(stringmap_t *Globals)
ml_value_t *ml_field_fn(void *Data, int Count, ml_value_t **Args) __attribute__((malloc))
ml_object_t *ml_field_owner(ml_field_t *Field)
ml_type_t *ml_class(const char *Name)
void ml_class_add_parent(ml_context_t *Context, ml_type_t *Class, ml_type_t *Parent)
void ml_class_add_field(ml_context_t *Context, ml_type_t *Class, ml_value_t *Field, ml_type_t *Type)
ml_value_t *ml_class_modify(ml_context_t *Context, ml_class_t *Class, ml_value_t *Modifier)
ml_value_t *ml_modified_field(ml_value_t *Field, ml_type_t *Type)
size_t ml_class_size(const ml_type_t *Value) __attribute__((pure))
const char *ml_class_field_name(const ml_type_t *Value, int Index) __attribute__((pure))
ml_value_t *ml_object(ml_type_t *Class, ...) __attribute__((sentinel))
size_t ml_object_size(const ml_value_t *Value) __attribute__((pure))
ml_value_t *ml_object_field(const ml_value_t *Value, int Index) __attribute__((pure))
void ml_object_foreach(const ml_value_t *Value, void *Data, int (*)(const char*, ml_value_t*, void*))

Variables

ml_type_t MLClassT[]
ml_type_t MLObjectT[]
ml_type_t MLFieldT[]
ml_type_t MLFieldMutableT[]
struct ml_field_info_t
struct ml_class_t
struct ml_field_t
struct ml_object_t