31 lines
516 B
C
31 lines
516 B
C
#ifndef FZL_CTABLE_H
|
|
#define FZL_CTABLE_H
|
|
|
|
#include <common/fzl_types.h>
|
|
#include <stddef.h>
|
|
|
|
// Class field descriptor
|
|
typedef struct
|
|
{
|
|
char *name;
|
|
size_t slot_index;
|
|
fzl_type_t type;
|
|
} fzl_ctable_field_t;
|
|
|
|
// Class table descriptor
|
|
typedef struct
|
|
{
|
|
char *name;
|
|
fzl_ctable_field_t *fields;
|
|
size_t fields_count;
|
|
size_t fields_remainder;
|
|
} fzl_ctable_t;
|
|
|
|
// Allocate class table
|
|
fzl_ctable_t *fzl_mkctable(char *name);
|
|
|
|
// Free class table
|
|
void fzl_freectable(fzl_ctable_t *ct);
|
|
|
|
#endif // FZL_CTABLE_H
|