8#include "TypeResolver.h"
21 vl::Var&
RegisterType(
const std::string&, vl::Var& type);
22 vl::Object&
GetType(
const std::string&);
23 bool ForeachType(
const std::function<
bool(
const std::string&, vl::Object&)>& pred);
24 bool ForeachType(
const std::function<
bool(
const std::string&,
const vl::Object&)>& pred)
const;
26 bool RenameType(
const std::string& typeName,
const std::string& newName);
27 bool HasType(
const std::string& typeName);
30 const vl::Object&
GetData()
const;
31 void Clear(
bool recursive =
false);
34 void Init(
const vl::Object& data);
50 vl::Object&
Add(
const std::string&, vl::Object& proto);
52 vl::Var&
Add(
const std::string&, vl::Var& value);
54 vl::Var&
Get(
const std::string& entityName);
55 const vl::Var&
Get(
const std::string& entityName)
const;
56 bool Has(
const std::string& entityName)
const;
57 bool Remove(
const std::string& entityName);
58 bool Rename(
const std::string& entityName,
const std::string& newName);
59 bool ForeachItem(
const std::function<
bool(
const std::string&, vl::Object&)>& pred);
60 bool ForeachItem(
const std::function<
bool(
const std::string&,
const vl::Object&)>& pred)
const;
65 const vl::Object&
GetData()
const;
66 void Clear(
bool recursive =
false);
69 void Init(
const vl::Object& data,
const TypeResolver& typeResolver);
87 vl::Object&
GetType(
const std::string& typeName);
88 bool Load(
const std::string& fileName);
92 std::string
GetTypeId(
const vl::Object& obj)
const;
94 void Clear(
bool recursive =
false);
95 std::string
DataStr(
bool pretty =
true)
const;
vl::Object mData
Definition: DMBCore.h:72
TypeResolver mTypeResolver
Definition: DMBCore.h:73
vl::Object & Add(const std::string &, vl::Object &proto)
Definition: DMBCore.cpp:83
int ItemCount() const
Definition: DMBCore.cpp:104
bool Remove(const std::string &entityName)
Definition: DMBCore.cpp:119
bool ForeachItem(const std::function< bool(const std::string &, vl::Object &)> &pred)
Definition: DMBCore.cpp:134
void Init(const vl::Object &data, const TypeResolver &typeResolver)
Definition: DMBCore.cpp:177
bool Store(const std::string &filePath, const vl::CnvParams ¶ms=vl::CnvParams())
Definition: DMBCore.cpp:150
std::string JSONStr(const vl::CnvParams ¶ms=vl::CnvParams())
Definition: DMBCore.cpp:156
bool Rename(const std::string &entityName, const std::string &newName)
Definition: DMBCore.cpp:129
bool Has(const std::string &entityName) const
Definition: DMBCore.cpp:114
vl::Var & Get(const std::string &entityName)
Definition: DMBCore.cpp:124
void Clear(bool recursive=false)
Definition: DMBCore.cpp:172
vl::Object & GetData()
Definition: DMBCore.cpp:162
bool Store(const std::string &fileName, const vl::CnvParams ¶ms=vl::CnvParams())
Definition: DMBCore.cpp:230
const vl::VarNodeRegistry & GetVarNodeRegistry() const
Definition: DMBCore.h:96
bool IsLoaded() const
Definition: DMBCore.cpp:225
vl::VarNodeRegistry mVarNodeRegistry
Definition: DMBCore.h:107
bool Load(const std::string &fileName)
Definition: DMBCore.cpp:212
Registry mRegistry
Definition: DMBCore.h:104
vl::Object & GetType(const std::string &typeName)
Definition: DMBCore.cpp:207
void Init()
Definition: DMBCore.cpp:287
const vl::Object & GetData()
Definition: DMBCore.cpp:270
Content & GetContent()
Definition: DMBCore.h:86
Registry & GetPrivateScope()
Definition: DMBCore.h:85
TypeResolver mTypeResolver
Definition: DMBCore.h:108
Registry mPrivate
Definition: DMBCore.h:105
std::string GetTypeId(const vl::Object &obj) const
Definition: DMBCore.cpp:242
Registry & GetRegistry()
Definition: DMBCore.h:84
void Clear(bool recursive=false)
Definition: DMBCore.cpp:275
Content mContent
Definition: DMBCore.h:106
~Model()
Definition: DMBCore.cpp:183
std::string JSONStr(const vl::CnvParams ¶ms=vl::CnvParams())
Definition: DMBCore.cpp:236
std::string DataStr(bool pretty=true) const
Definition: DMBCore.cpp:280
Model()
Definition: DMBCore.cpp:188
vl::Object mData
Definition: DMBCore.h:103
bool mIsLoaded
Definition: DMBCore.h:109
vl::Object & GetData()
Definition: DMBCore.cpp:63
bool HasType(const std::string &typeName)
Definition: DMBCore.cpp:58
bool RenameType(const std::string &typeName, const std::string &newName)
Definition: DMBCore.cpp:53
vl::Var & RegisterType(const std::string &, vl::Var &type)
Definition: DMBCore.cpp:22
vl::Object mData
Definition: DMBCore.h:37
void Clear(bool recursive=false)
Definition: DMBCore.cpp:73
vl::Object & GetType(const std::string &)
Definition: DMBCore.cpp:27
bool ForeachType(const std::function< bool(const std::string &, vl::Object &)> &pred)
Definition: DMBCore.cpp:32
void Init(const vl::Object &data)
Definition: DMBCore.cpp:78
bool RemoveType(const std::string &typeName)
Definition: DMBCore.cpp:48
vl::Object & CreateType(const std::string &)
Definition: DMBCore.cpp:17
Definition: VLBackwardTraversable.h:128