00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef avro_Compiler_hh__
00020 #define avro_Compiler_hh__
00021
00022 #include "Config.hh"
00023 #include <stdint.h>
00024 #include <istream>
00025
00026 namespace avro {
00027
00028 class AVRO_DECL InputStream;
00029
00034
00035 class AVRO_DECL ValidSchema;
00036
00040
00041 AVRO_DECL void compileJsonSchema(std::istream &is, ValidSchema &schema);
00042
00047
00048 AVRO_DECL bool compileJsonSchema(std::istream &is, ValidSchema &schema,
00049 std::string &error);
00050
00051 AVRO_DECL ValidSchema compileJsonSchemaFromStream(InputStream& is);
00052
00053 AVRO_DECL ValidSchema compileJsonSchemaFromMemory(const uint8_t* input, size_t len);
00054
00055 AVRO_DECL ValidSchema compileJsonSchemaFromString(const char* input);
00056
00057 AVRO_DECL ValidSchema compileJsonSchemaFromString(const std::string& input);
00058
00059 AVRO_DECL ValidSchema compileJsonSchemaFromFile(const char* filename);
00060
00061 }
00062
00063 #endif