fx: re-arrange type system to allow for reflection
This commit is contained in:
+6
-6
@@ -31,16 +31,16 @@ static void bitcode_serial_ctx_fini(fx_object *obj, void *priv)
|
||||
|
||||
/*** CLASS DEFINITION *********************************************************/
|
||||
|
||||
FX_TYPE_CLASS_DEFINITION_BEGIN(fx_bitcode_serial_ctx)
|
||||
FX_TYPE_CLASS_INTERFACE_BEGIN(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_CLASS_BEGIN(fx_bitcode_serial_ctx)
|
||||
FX_TYPE_VTABLE_INTERFACE_BEGIN(fx_object, FX_TYPE_OBJECT)
|
||||
FX_INTERFACE_ENTRY(to_string) = NULL;
|
||||
FX_TYPE_CLASS_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_VTABLE_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
|
||||
FX_TYPE_CLASS_INTERFACE_BEGIN(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_TYPE_VTABLE_INTERFACE_BEGIN(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_INTERFACE_ENTRY(s_serialise) = bitcode_serialise;
|
||||
FX_INTERFACE_ENTRY(s_deserialise) = bitcode_deserialise;
|
||||
FX_TYPE_CLASS_INTERFACE_END(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_TYPE_CLASS_DEFINITION_END(fx_bitcode_serial_ctx)
|
||||
FX_TYPE_VTABLE_INTERFACE_END(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_TYPE_CLASS_END(fx_bitcode_serial_ctx)
|
||||
|
||||
FX_TYPE_DEFINITION_BEGIN(fx_bitcode_serial_ctx)
|
||||
FX_TYPE_ID(0xcdc8c462, 0xf2b3, 0x4193, 0x8cae, 0xc1e5ad9afcb8);
|
||||
|
||||
+4
-4
@@ -26,11 +26,11 @@ static void serial_ctx_fini(fx_object *obj, void *priv)
|
||||
|
||||
/*** CLASS DEFINITION *********************************************************/
|
||||
|
||||
FX_TYPE_CLASS_DEFINITION_BEGIN(fx_serial_ctx)
|
||||
FX_TYPE_CLASS_INTERFACE_BEGIN(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_CLASS_BEGIN(fx_serial_ctx)
|
||||
FX_TYPE_VTABLE_INTERFACE_BEGIN(fx_object, FX_TYPE_OBJECT)
|
||||
FX_INTERFACE_ENTRY(to_string) = NULL;
|
||||
FX_TYPE_CLASS_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_CLASS_DEFINITION_END(fx_serial_ctx)
|
||||
FX_TYPE_VTABLE_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_CLASS_END(fx_serial_ctx)
|
||||
|
||||
FX_TYPE_DEFINITION_BEGIN(fx_serial_ctx)
|
||||
FX_TYPE_ID(0xc7c1039a, 0xf397, 0x4fda, 0xb473, 0x4d86fec85384);
|
||||
|
||||
@@ -12,7 +12,7 @@ FX_DECLARE_TYPE(fx_bitcode_serial_ctx);
|
||||
FX_TYPE_CLASS_DECLARATION_BEGIN(fx_bitcode_serial_ctx)
|
||||
FX_TYPE_CLASS_DECLARATION_END(fx_bitcode_serial_ctx)
|
||||
|
||||
FX_API fx_type fx_bitcode_serial_ctx_get_type(void);
|
||||
FX_API fx_type_id fx_bitcode_serial_ctx_get_type(void);
|
||||
|
||||
FX_TYPE_DEFAULT_CONSTRUCTOR(fx_bitcode_serial_ctx, FX_TYPE_BITCODE_SERIAL_CTX);
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ typedef struct fx_serial_ctx_data {
|
||||
fx_stream_buffer *ctx_streambuf;
|
||||
} fx_serial_ctx_data;
|
||||
|
||||
FX_API fx_type fx_serial_ctx_get_type(void);
|
||||
FX_API fx_type_id fx_serial_ctx_get_type(void);
|
||||
|
||||
FX_API fx_result fx_serial_ctx_serialise(
|
||||
fx_serial_ctx *ctx,
|
||||
|
||||
@@ -12,7 +12,7 @@ FX_DECLARE_TYPE(fx_toml_serial_ctx);
|
||||
FX_TYPE_CLASS_DECLARATION_BEGIN(fx_toml_serial_ctx)
|
||||
FX_TYPE_CLASS_DECLARATION_END(fx_toml_serial_ctx)
|
||||
|
||||
FX_API fx_type fx_toml_serial_ctx_get_type(void);
|
||||
FX_API fx_type_id fx_toml_serial_ctx_get_type(void);
|
||||
|
||||
FX_TYPE_DEFAULT_CONSTRUCTOR(fx_toml_serial_ctx, FX_TYPE_TOML_SERIAL_CTX);
|
||||
|
||||
|
||||
+6
-6
@@ -2322,16 +2322,16 @@ static void toml_serial_ctx_fini(fx_object *obj, void *priv)
|
||||
|
||||
/*** CLASS DEFINITION *********************************************************/
|
||||
|
||||
FX_TYPE_CLASS_DEFINITION_BEGIN(fx_toml_serial_ctx)
|
||||
FX_TYPE_CLASS_INTERFACE_BEGIN(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_CLASS_BEGIN(fx_toml_serial_ctx)
|
||||
FX_TYPE_VTABLE_INTERFACE_BEGIN(fx_object, FX_TYPE_OBJECT)
|
||||
FX_INTERFACE_ENTRY(to_string) = NULL;
|
||||
FX_TYPE_CLASS_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
FX_TYPE_VTABLE_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
|
||||
FX_TYPE_CLASS_INTERFACE_BEGIN(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_TYPE_VTABLE_INTERFACE_BEGIN(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_INTERFACE_ENTRY(s_serialise) = toml_serialise;
|
||||
FX_INTERFACE_ENTRY(s_deserialise) = toml_deserialise;
|
||||
FX_TYPE_CLASS_INTERFACE_END(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_TYPE_CLASS_DEFINITION_END(fx_toml_serial_ctx)
|
||||
FX_TYPE_VTABLE_INTERFACE_END(fx_serial_ctx, FX_TYPE_SERIAL_CTX)
|
||||
FX_TYPE_CLASS_END(fx_toml_serial_ctx)
|
||||
|
||||
FX_TYPE_DEFINITION_BEGIN(fx_toml_serial_ctx)
|
||||
FX_TYPE_ID(0xaec8dca0, 0x131a, 0x4217, 0x916b, 0xaed15756601c);
|
||||
|
||||
Reference in New Issue
Block a user