LeviLamina
Loading...
Searching...
No Matches
Document.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/container/list.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace Bedrock::JSONObject { class DocumentOptions; }
11namespace Bedrock::JSONObject { class MemoryPage; }
12namespace Bedrock::JSONObject { class Node; }
13namespace Bedrock::JSONObject { class NodeBase; }
14namespace Bedrock::JSONObject { class OutputOptions; }
15namespace Bedrock::JSONObject { class ParseResult; }
16namespace Bedrock::JSONObject { class StringNode; }
17namespace Bedrock::JSONObject { class ValueWrapper; }
18// clang-format on
19
20namespace Bedrock::JSONObject {
21
22class Document {
23public:
24 // Document inner types declare
25 // clang-format off
26 struct AllocatedResources;
27 // clang-format on
28
29 // Document inner types define
30 struct AllocatedResources {
31 public:
32 // member variables
33 // NOLINTBEGIN
40 // NOLINTEND
41
42 public:
43 // prevent constructor by default
44 AllocatedResources& operator=(AllocatedResources const&);
45 AllocatedResources(AllocatedResources const&);
46 AllocatedResources();
47
48 public:
49 // member functions
50 // NOLINTBEGIN
51#ifdef LL_PLAT_C
52 MCNAPI explicit AllocatedResources(::Bedrock::JSONObject::MemoryPage* owningMemoryPage);
53#endif
54 // NOLINTEND
55
56 public:
57 // constructor thunks
58 // NOLINTBEGIN
59#ifdef LL_PLAT_C
60 MCNAPI void* $ctor(::Bedrock::JSONObject::MemoryPage* owningMemoryPage);
61#endif
62 // NOLINTEND
63 };
64
65public:
66 // member variables
67 // NOLINTBEGIN
75 // NOLINTEND
76
77public:
78 // prevent constructor by default
79 Document& operator=(Document const&);
80 Document(Document const&);
81 Document();
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCNAPI explicit Document(::Bedrock::JSONObject::DocumentOptions const& options);
87
88 MCNAPI void* _acquireNode(
89 ::Bedrock::Intrusive::
90 list<::Bedrock::JSONObject::NodeBase, ::Bedrock::JSONObject::NodeBase, ::Bedrock::JSONObject::NodeBase>&
91 freeList,
92 uint64 size,
93 uint64 alignment
94 );
95
96 MCNAPI void* _acquireStringBuffer(uint64 length, uint64& outCapacity);
97
98 MCNAPI ::Bedrock::JSONObject::NodeBase* _createNode(::Bedrock::JSONObject::ValueWrapper const& value);
99
100 MCNAPI ::Bedrock::JSONObject::MemoryPage& _getMemoryPage();
101
102#ifdef LL_PLAT_C
103 MCNAPI ::Bedrock::JSONObject::MemoryPage* _getMemoryPageAt(uint index);
104#endif
105
106 MCNAPI void _initialize();
107
109
110#ifdef LL_PLAT_C
111 MCNAPI void _releaseStringBuffer(::Bedrock::JSONObject::StringNode& node);
112#endif
113
115
116 MCNAPI ::Bedrock::JSONObject::ParseResult const& loadString(::std::string_view str);
117
118 MCNAPI void reset();
119
121
122 MCNAPI ::Bedrock::JSONObject::Node* setRoot(::Bedrock::JSONObject::ValueWrapper const& value);
123
124#ifdef LL_PLAT_C
125 MCNAPI void writeStream(::std::ostream& out, ::Bedrock::JSONObject::OutputOptions const& outputOptions) const;
126
127 MCNAPI void writeString(::std::string& dest, ::Bedrock::JSONObject::OutputOptions const& outputOptions) const;
128#endif
129
130 MCNAPI ~Document();
131 // NOLINTEND
132
133public:
134 // constructor thunks
135 // NOLINTBEGIN
136 MCNAPI void* $ctor(::Bedrock::JSONObject::DocumentOptions const& options);
137 // NOLINTEND
138
139public:
140 // destructor thunk
141 // NOLINTBEGIN
142 MCNAPI void $dtor();
143 // NOLINTEND
144};
145
146} // namespace Bedrock::JSONObject
Definition DocumentOptions.h:7
MCAPI::Bedrock::JSONObject::ParseResult const & loadString(::std::string_view str)
MCAPI::Bedrock::JSONObject::NodeBase * _createNode(::Bedrock::JSONObject::ValueWrapper const &value)
MCAPI void * $ctor(::Bedrock::JSONObject::DocumentOptions const &options)
MCAPI void setOptions(::Bedrock::JSONObject::DocumentOptions const &options)
MCAPI Document(::Bedrock::JSONObject::DocumentOptions const &options)
MCAPI void * _acquireStringBuffer(uint64 length, uint64 &outCapacity)
MCAPI void _releaseNode(::Bedrock::JSONObject::NodeBase &node)
MCAPI void _setRoot(::Bedrock::JSONObject::NodeBase *base)
MCAPI::Bedrock::JSONObject::MemoryPage & _getMemoryPage()
MCAPI void * _acquireNode(::Bedrock::Intrusive::list<::Bedrock::JSONObject::NodeBase, ::Bedrock::JSONObject::NodeBase, ::Bedrock::JSONObject::NodeBase > &freeList, uint64 size, uint64 alignment)
MCAPI::Bedrock::JSONObject::Node * setRoot(::Bedrock::JSONObject::ValueWrapper const &value)
Definition MemoryPage.h:7
Definition NodeBase.h:19
Definition Node.h:17
Definition OutputOptions.h:7
Definition ParseResult.h:7
Definition StringNode.h:10
Definition ValueWrapper.h:7
Definition Alias.h:14