#ifndef __BIGPOINT_CCLASS_H__ #define __BIGPOINT_CCLASS_H__ #include #include #include typedef void (* ctor)(void *, va_list *); typedef void (* dtor)(void *); typedef void (* jCtor)(void *, struct json_object *); typedef struct json_object * (* jTo)(void *); struct BIGPOINT_CCLASS { size_t size; void (* __construct)(void * _this, va_list * params); void (* __jsonConst)(void * _this, struct json_object * json); void (* __destruct)(void * _this); struct json_object * (* __toJson)(void * _this); }; void * new(const void * _class, ...); void * newFromJson(const void * _class, struct json_object * json); void delete(void * _object); struct json_object * toJson(void * _object); #endif//__BIGPOINT_CCLASS_H__ // vim: set et ts=4 sw=4: