🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
Serializer.hpp
浏览该文件的文档.
1
8
9#pragma once
10
11#include "AstGlobal.h"
12#include "AstUtil/Object.hpp"
13#include <string>
14
15AST_NAMESPACE_BEGIN
16
19 eJson,
20 eXml,
21 eCpp,
22 eJava,
23 ePython
24};
25
27class AST_UTIL_API Serializer {
28public:
29 virtual ~Serializer() = default;
30
35 virtual errc_t serialize(Object* object, std::string& output) = 0;
36
41 virtual errc_t deserialize(const std::string& input, Object* object) = 0;
42};
43
44AST_NAMESPACE_END
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:81
序列化器基类
定义 Serializer.hpp:27
virtual errc_t deserialize(const std::string &input, Object *object)=0
反序列化对象
virtual errc_t serialize(Object *object, std::string &output)=0
序列化对象
ESerializationFormat
序列化格式枚举
定义 Serializer.hpp:18