meta: rename serial module to fx.serial namespace
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
include(../cmake/Templates.cmake)
|
||||
|
||||
add_fx_module(NAME serial DEPENDENCIES core ds)
|
||||
@@ -0,0 +1,50 @@
|
||||
#include <fx/serial/bitcode.h>
|
||||
#include <fx/serial/ctx.h>
|
||||
|
||||
/*** VIRTUAL FUNCTIONS ********************************************************/
|
||||
|
||||
static struct fx_error *bitcode_serialise(
|
||||
fx_serial_ctx *serial,
|
||||
fx_object *src,
|
||||
fx_stream *dest,
|
||||
enum fx_serial_flags flags)
|
||||
{
|
||||
return FX_RESULT_ERR(NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
static struct fx_error *bitcode_deserialise(
|
||||
fx_serial_ctx *serial,
|
||||
fx_stream *src,
|
||||
fx_object **dest,
|
||||
enum fx_serial_flags flags)
|
||||
{
|
||||
return FX_RESULT_ERR(NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
static void bitcode_serial_ctx_init(fx_object *obj, void *priv)
|
||||
{
|
||||
}
|
||||
|
||||
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_INTERFACE_ENTRY(to_string) = NULL;
|
||||
FX_TYPE_CLASS_INTERFACE_END(fx_object, FX_TYPE_OBJECT)
|
||||
|
||||
FX_TYPE_CLASS_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_DEFINITION_BEGIN(fx_bitcode_serial_ctx)
|
||||
FX_TYPE_ID(0xcdc8c462, 0xf2b3, 0x4193, 0x8cae, 0xc1e5ad9afcb8);
|
||||
FX_TYPE_CLASS(fx_bitcode_serial_ctx_class);
|
||||
FX_TYPE_INSTANCE_INIT(bitcode_serial_ctx_init);
|
||||
FX_TYPE_INSTANCE_FINI(bitcode_serial_ctx_fini);
|
||||
FX_TYPE_DEFINITION_END(fx_bitcode_serial_ctx)
|
||||
@@ -0,0 +1,77 @@
|
||||
#include <fx/serial.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
/*** PRIVATE DATA *************************************************************/
|
||||
/*** PRIVATE FUNCTIONS ********************************************************/
|
||||
/*** PUBLIC FUNCTIONS *********************************************************/
|
||||
/*** PUBLIC ALIAS FUNCTIONS ***************************************************/
|
||||
/*** VIRTUAL FUNCTIONS ********************************************************/
|
||||
|
||||
static void serial_ctx_init(fx_object *obj, void *priv)
|
||||
{
|
||||
fx_serial_ctx_data *data
|
||||
= fx_object_get_protected(obj, FX_TYPE_SERIAL_CTX);
|
||||
|
||||
data->ctx_streambuf = fx_stream_buffer_create_dynamic(2048);
|
||||
}
|
||||
|
||||
static void serial_ctx_fini(fx_object *obj, void *priv)
|
||||
{
|
||||
fx_serial_ctx_data *data
|
||||
= fx_object_get_protected(obj, FX_TYPE_SERIAL_CTX);
|
||||
|
||||
fx_stream_buffer_unref(data->ctx_streambuf);
|
||||
}
|
||||
|
||||
/*** CLASS DEFINITION *********************************************************/
|
||||
|
||||
FX_TYPE_CLASS_DEFINITION_BEGIN(fx_serial_ctx)
|
||||
FX_TYPE_CLASS_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_DEFINITION_BEGIN(fx_serial_ctx)
|
||||
FX_TYPE_ID(0xc7c1039a, 0xf397, 0x4fda, 0xb473, 0x4d86fec85384);
|
||||
FX_TYPE_CLASS(fx_serial_ctx_class);
|
||||
FX_TYPE_INSTANCE_PROTECTED(fx_serial_ctx_data);
|
||||
FX_TYPE_INSTANCE_INIT(serial_ctx_init);
|
||||
FX_TYPE_INSTANCE_FINI(serial_ctx_fini);
|
||||
FX_TYPE_DEFINITION_END(fx_serial_ctx)
|
||||
|
||||
/*** ITERATOR FUNCTIONS *******************************************************/
|
||||
|
||||
fx_result fx_serial_ctx_serialise(
|
||||
fx_serial_ctx *ctx,
|
||||
fx_object *src,
|
||||
fx_stream *dest,
|
||||
enum fx_serial_flags flags)
|
||||
{
|
||||
FX_CLASS_DISPATCH_VIRTUAL(
|
||||
fx_serial_ctx,
|
||||
FX_TYPE_SERIAL_CTX,
|
||||
FX_RESULT_ERR(NOT_SUPPORTED),
|
||||
s_serialise,
|
||||
ctx,
|
||||
src,
|
||||
dest,
|
||||
flags);
|
||||
}
|
||||
|
||||
fx_result fx_serial_ctx_deserialise(
|
||||
fx_serial_ctx *ctx,
|
||||
fx_stream *src,
|
||||
fx_object **dest,
|
||||
enum fx_serial_flags flags)
|
||||
{
|
||||
FX_CLASS_DISPATCH_VIRTUAL(
|
||||
fx_serial_ctx,
|
||||
FX_TYPE_SERIAL_CTX,
|
||||
FX_RESULT_ERR(NOT_SUPPORTED),
|
||||
s_deserialise,
|
||||
ctx,
|
||||
src,
|
||||
dest,
|
||||
flags);
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
#ifndef FX_SERIAL_H_
|
||||
#define FX_SERIAL_H_
|
||||
|
||||
#include <fx/serial/bitcode.h>
|
||||
#include <fx/serial/ctx.h>
|
||||
#include <fx/serial/toml.h>
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,21 @@
|
||||
#ifndef FX_SERIAL_BITCODE_H_
|
||||
#define FX_SERIAL_BITCODE_H_
|
||||
|
||||
#include <fx/core/macros.h>
|
||||
|
||||
FX_DECLS_BEGIN;
|
||||
|
||||
#define FX_TYPE_BITCODE_SERIAL_CTX (fx_bitcode_serial_ctx_get_type())
|
||||
|
||||
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_TYPE_DEFAULT_CONSTRUCTOR(fx_bitcode_serial_ctx, FX_TYPE_BITCODE_SERIAL_CTX);
|
||||
|
||||
FX_DECLS_END;
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,54 @@
|
||||
#ifndef FX_SERIAL_CTX_H_
|
||||
#define FX_SERIAL_CTX_H_
|
||||
|
||||
#include <fx/core/macros.h>
|
||||
#include <fx/core/misc.h>
|
||||
#include <fx/core/object.h>
|
||||
#include <fx/core/status.h>
|
||||
#include <fx/core/stream.h>
|
||||
|
||||
FX_DECLS_BEGIN;
|
||||
|
||||
#define FX_TYPE_SERIAL_CTX (fx_serial_ctx_get_type())
|
||||
|
||||
typedef enum fx_serial_flags {
|
||||
FX_SERIAL_F_NONE = 0,
|
||||
FX_SERIAL_F_PRETTY = 0x01u,
|
||||
} fx_serial_flags;
|
||||
|
||||
FX_DECLARE_TYPE(fx_serial_ctx);
|
||||
|
||||
FX_TYPE_CLASS_DECLARATION_BEGIN(fx_serial_ctx)
|
||||
fx_result (*s_serialise)(
|
||||
fx_serial_ctx *,
|
||||
fx_object *,
|
||||
fx_stream *,
|
||||
fx_serial_flags);
|
||||
fx_result (*s_deserialise)(
|
||||
fx_serial_ctx *,
|
||||
fx_stream *,
|
||||
fx_object **,
|
||||
fx_serial_flags);
|
||||
FX_TYPE_CLASS_DECLARATION_END(fx_serial_ctx)
|
||||
|
||||
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_result fx_serial_ctx_serialise(
|
||||
fx_serial_ctx *ctx,
|
||||
fx_object *src,
|
||||
fx_stream *dest,
|
||||
fx_serial_flags flags);
|
||||
|
||||
FX_API fx_result fx_serial_ctx_deserialise(
|
||||
fx_serial_ctx *ctx,
|
||||
fx_stream *src,
|
||||
fx_object **dest,
|
||||
fx_serial_flags flags);
|
||||
|
||||
FX_DECLS_END;
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,21 @@
|
||||
#ifndef FX_SERIAL_TOML_H_
|
||||
#define FX_SERIAL_TOML_H_
|
||||
|
||||
#include <fx/core/macros.h>
|
||||
|
||||
FX_DECLS_BEGIN;
|
||||
|
||||
#define FX_TYPE_TOML_SERIAL_CTX (fx_toml_serial_ctx_get_type())
|
||||
|
||||
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_TYPE_DEFAULT_CONSTRUCTOR(fx_toml_serial_ctx, FX_TYPE_TOML_SERIAL_CTX);
|
||||
|
||||
FX_DECLS_END;
|
||||
|
||||
#endif
|
||||
+2339
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,4 @@
|
||||
#ifndef TOML_H_
|
||||
#define TOML_H_
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user