]> git.proxmox.com Git - ceph.git/blame - ceph/src/rapidjson/include/rapidjson/fwd.h
update sources to v12.1.0
[ceph.git] / ceph / src / rapidjson / include / rapidjson / fwd.h
CommitLineData
31f18b77
FG
1// Tencent is pleased to support the open source community by making RapidJSON available.
2//
3// Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
4//
5// Licensed under the MIT License (the "License"); you may not use this file except
6// in compliance with the License. You may obtain a copy of the License at
7//
8// http://opensource.org/licenses/MIT
9//
10// Unless required by applicable law or agreed to in writing, software distributed
11// under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
12// CONDITIONS OF ANY KIND, either express or implied. See the License for the
13// specific language governing permissions and limitations under the License.
14
15#ifndef RAPIDJSON_FWD_H_
16#define RAPIDJSON_FWD_H_
17
18#include "rapidjson.h"
19
20RAPIDJSON_NAMESPACE_BEGIN
21
22// encodings.h
23
24template<typename CharType> struct UTF8;
25template<typename CharType> struct UTF16;
26template<typename CharType> struct UTF16BE;
27template<typename CharType> struct UTF16LE;
28template<typename CharType> struct UTF32;
29template<typename CharType> struct UTF32BE;
30template<typename CharType> struct UTF32LE;
31template<typename CharType> struct ASCII;
32template<typename CharType> struct AutoUTF;
33
34template<typename SourceEncoding, typename TargetEncoding>
35struct Transcoder;
36
37// allocators.h
38
39class CrtAllocator;
40
41template <typename BaseAllocator>
42class MemoryPoolAllocator;
43
44// stream.h
45
46template <typename Encoding>
47struct GenericStringStream;
48
49typedef GenericStringStream<UTF8<char> > StringStream;
50
51template <typename Encoding>
52struct GenericInsituStringStream;
53
54typedef GenericInsituStringStream<UTF8<char> > InsituStringStream;
55
56// stringbuffer.h
57
58template <typename Encoding, typename Allocator>
59class GenericStringBuffer;
60
61typedef GenericStringBuffer<UTF8<char>, CrtAllocator> StringBuffer;
62
63// filereadstream.h
64
65class FileReadStream;
66
67// filewritestream.h
68
69class FileWriteStream;
70
71// memorybuffer.h
72
73template <typename Allocator>
74struct GenericMemoryBuffer;
75
76typedef GenericMemoryBuffer<CrtAllocator> MemoryBuffer;
77
78// memorystream.h
79
80struct MemoryStream;
81
82// reader.h
83
84template<typename Encoding, typename Derived>
85struct BaseReaderHandler;
86
87template <typename SourceEncoding, typename TargetEncoding, typename StackAllocator>
88class GenericReader;
89
90typedef GenericReader<UTF8<char>, UTF8<char>, CrtAllocator> Reader;
91
92// writer.h
93
94template<typename OutputStream, typename SourceEncoding, typename TargetEncoding, typename StackAllocator, unsigned writeFlags>
95class Writer;
96
97// prettywriter.h
98
99template<typename OutputStream, typename SourceEncoding, typename TargetEncoding, typename StackAllocator, unsigned writeFlags>
100class PrettyWriter;
101
102// document.h
103
104template <typename Encoding, typename Allocator>
105struct GenericMember;
106
107template <bool Const, typename Encoding, typename Allocator>
108class GenericMemberIterator;
109
110template<typename CharType>
111struct GenericStringRef;
112
113template <typename Encoding, typename Allocator>
114class GenericValue;
115
116typedef GenericValue<UTF8<char>, MemoryPoolAllocator<CrtAllocator> > Value;
117
118template <typename Encoding, typename Allocator, typename StackAllocator>
119class GenericDocument;
120
121typedef GenericDocument<UTF8<char>, MemoryPoolAllocator<CrtAllocator>, CrtAllocator> Document;
122
123// pointer.h
124
125template <typename ValueType, typename Allocator>
126class GenericPointer;
127
128typedef GenericPointer<Value, CrtAllocator> Pointer;
129
130// schema.h
131
132template <typename SchemaDocumentType>
133class IGenericRemoteSchemaDocumentProvider;
134
135template <typename ValueT, typename Allocator>
136class GenericSchemaDocument;
137
138typedef GenericSchemaDocument<Value, CrtAllocator> SchemaDocument;
139typedef IGenericRemoteSchemaDocumentProvider<SchemaDocument> IRemoteSchemaDocumentProvider;
140
141template <
142 typename SchemaDocumentType,
143 typename OutputHandler,
144 typename StateAllocator>
145class GenericSchemaValidator;
146
147typedef GenericSchemaValidator<SchemaDocument, BaseReaderHandler<UTF8<char>, void>, CrtAllocator> SchemaValidator;
148
149RAPIDJSON_NAMESPACE_END
150
151#endif // RAPIDJSON_RAPIDJSONFWD_H_