Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 10:28:10

0001 // Tencent is pleased to support the open source community by making RapidJSON available.
0002 // 
0003 // Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip.
0004 //
0005 // Licensed under the MIT License (the "License"); you may not use this file except
0006 // in compliance with the License. You may obtain a copy of the License at
0007 //
0008 // http://opensource.org/licenses/MIT
0009 //
0010 // Unless required by applicable law or agreed to in writing, software distributed 
0011 // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 
0012 // CONDITIONS OF ANY KIND, either express or implied. See the License for the 
0013 // specific language governing permissions and limitations under the License.
0014 
0015 #ifndef RAPIDJSON_FWD_H_
0016 #define RAPIDJSON_FWD_H_
0017 
0018 #include "rapidjson.h"
0019 
0020 RAPIDJSON_NAMESPACE_BEGIN
0021 
0022 // encodings.h
0023 
0024 template<typename CharType> struct UTF8;
0025 template<typename CharType> struct UTF16;
0026 template<typename CharType> struct UTF16BE;
0027 template<typename CharType> struct UTF16LE;
0028 template<typename CharType> struct UTF32;
0029 template<typename CharType> struct UTF32BE;
0030 template<typename CharType> struct UTF32LE;
0031 template<typename CharType> struct ASCII;
0032 template<typename CharType> struct AutoUTF;
0033 
0034 template<typename SourceEncoding, typename TargetEncoding>
0035 struct Transcoder;
0036 
0037 // allocators.h
0038 
0039 class CrtAllocator;
0040 
0041 template <typename BaseAllocator>
0042 class MemoryPoolAllocator;
0043 
0044 // stream.h
0045 
0046 template <typename Encoding>
0047 struct GenericStringStream;
0048 
0049 typedef GenericStringStream<UTF8<char> > StringStream;
0050 
0051 template <typename Encoding>
0052 struct GenericInsituStringStream;
0053 
0054 typedef GenericInsituStringStream<UTF8<char> > InsituStringStream;
0055 
0056 // stringbuffer.h
0057 
0058 template <typename Encoding, typename Allocator>
0059 class GenericStringBuffer;
0060 
0061 typedef GenericStringBuffer<UTF8<char>, CrtAllocator> StringBuffer;
0062 
0063 // filereadstream.h
0064 
0065 class FileReadStream;
0066 
0067 // filewritestream.h
0068 
0069 class FileWriteStream;
0070 
0071 // memorybuffer.h
0072 
0073 template <typename Allocator>
0074 struct GenericMemoryBuffer;
0075 
0076 typedef GenericMemoryBuffer<CrtAllocator> MemoryBuffer;
0077 
0078 // memorystream.h
0079 
0080 struct MemoryStream;
0081 
0082 // reader.h
0083 
0084 template<typename Encoding, typename Derived>
0085 struct BaseReaderHandler;
0086 
0087 template <typename SourceEncoding, typename TargetEncoding, typename StackAllocator>
0088 class GenericReader;
0089 
0090 typedef GenericReader<UTF8<char>, UTF8<char>, CrtAllocator> Reader;
0091 
0092 // writer.h
0093 
0094 template<typename OutputStream, typename SourceEncoding, typename TargetEncoding, typename StackAllocator, unsigned writeFlags>
0095 class Writer;
0096 
0097 // prettywriter.h
0098 
0099 template<typename OutputStream, typename SourceEncoding, typename TargetEncoding, typename StackAllocator, unsigned writeFlags>
0100 class PrettyWriter;
0101 
0102 // document.h
0103 
0104 template <typename Encoding, typename Allocator> 
0105 class GenericMember;
0106 
0107 template <bool Const, typename Encoding, typename Allocator>
0108 class GenericMemberIterator;
0109 
0110 template<typename CharType>
0111 struct GenericStringRef;
0112 
0113 template <typename Encoding, typename Allocator> 
0114 class GenericValue;
0115 
0116 typedef GenericValue<UTF8<char>, MemoryPoolAllocator<CrtAllocator> > Value;
0117 
0118 template <typename Encoding, typename Allocator, typename StackAllocator>
0119 class GenericDocument;
0120 
0121 typedef GenericDocument<UTF8<char>, MemoryPoolAllocator<CrtAllocator>, CrtAllocator> Document;
0122 
0123 // pointer.h
0124 
0125 template <typename ValueType, typename Allocator>
0126 class GenericPointer;
0127 
0128 typedef GenericPointer<Value, CrtAllocator> Pointer;
0129 
0130 // schema.h
0131 
0132 template <typename SchemaDocumentType>
0133 class IGenericRemoteSchemaDocumentProvider;
0134 
0135 template <typename ValueT, typename Allocator>
0136 class GenericSchemaDocument;
0137 
0138 typedef GenericSchemaDocument<Value, CrtAllocator> SchemaDocument;
0139 typedef IGenericRemoteSchemaDocumentProvider<SchemaDocument> IRemoteSchemaDocumentProvider;
0140 
0141 template <
0142     typename SchemaDocumentType,
0143     typename OutputHandler,
0144     typename StateAllocator>
0145 class GenericSchemaValidator;
0146 
0147 typedef GenericSchemaValidator<SchemaDocument, BaseReaderHandler<UTF8<char>, void>, CrtAllocator> SchemaValidator;
0148 
0149 RAPIDJSON_NAMESPACE_END
0150 
0151 #endif // RAPIDJSON_RAPIDJSONFWD_H_