diff options
author | thegeorg <thegeorg@yandex-team.ru> | 2022-02-10 16:45:12 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:45:12 +0300 |
commit | 49116032d905455a7b1c994e4a696afc885c1e71 (patch) | |
tree | be835aa92c6248212e705f25388ebafcf84bc7a1 /contrib/libs/apache/avro/api/Compiler.hh | |
parent | 4e839db24a3bbc9f1c610c43d6faaaa99824dcca (diff) | |
download | ydb-49116032d905455a7b1c994e4a696afc885c1e71.tar.gz |
Restoring authorship annotation for <thegeorg@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/libs/apache/avro/api/Compiler.hh')
-rw-r--r-- | contrib/libs/apache/avro/api/Compiler.hh | 126 |
1 files changed, 63 insertions, 63 deletions
diff --git a/contrib/libs/apache/avro/api/Compiler.hh b/contrib/libs/apache/avro/api/Compiler.hh index 3df875cd16..892d60580d 100644 --- a/contrib/libs/apache/avro/api/Compiler.hh +++ b/contrib/libs/apache/avro/api/Compiler.hh @@ -1,63 +1,63 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef avro_Compiler_hh__ -#define avro_Compiler_hh__ - -#include "Config.hh" -#include <stdint.h> -#include <istream> - -namespace avro { - -class AVRO_DECL InputStream; - -/// This class is used to implement an avro spec parser using a flex/bison -/// compiler. In order for the lexer to be reentrant, this class provides a -/// lexer object for each parse. The bison parser also uses this class to -/// build up an avro parse tree as the avro spec is parsed. - -class AVRO_DECL ValidSchema; - -/// Given a stream comtaining a JSON schema, compiles the schema to a -/// ValidSchema object. Throws if the schema cannot be compiled to a valid -/// schema - -AVRO_DECL void compileJsonSchema(std::istream &is, ValidSchema &schema); - -/// Non-throwing version of compileJsonSchema. -/// -/// \return True if no error, false if error (with the error string set) -/// - -AVRO_DECL bool compileJsonSchema(std::istream &is, ValidSchema &schema, - std::string &error); - -AVRO_DECL ValidSchema compileJsonSchemaFromStream(InputStream& is); - -AVRO_DECL ValidSchema compileJsonSchemaFromMemory(const uint8_t* input, size_t len); - -AVRO_DECL ValidSchema compileJsonSchemaFromString(const char* input); - -AVRO_DECL ValidSchema compileJsonSchemaFromString(const std::string& input); - -AVRO_DECL ValidSchema compileJsonSchemaFromFile(const char* filename); - -} // namespace avro - -#endif +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef avro_Compiler_hh__ +#define avro_Compiler_hh__ + +#include "Config.hh" +#include <stdint.h> +#include <istream> + +namespace avro { + +class AVRO_DECL InputStream; + +/// This class is used to implement an avro spec parser using a flex/bison +/// compiler. In order for the lexer to be reentrant, this class provides a +/// lexer object for each parse. The bison parser also uses this class to +/// build up an avro parse tree as the avro spec is parsed. + +class AVRO_DECL ValidSchema; + +/// Given a stream comtaining a JSON schema, compiles the schema to a +/// ValidSchema object. Throws if the schema cannot be compiled to a valid +/// schema + +AVRO_DECL void compileJsonSchema(std::istream &is, ValidSchema &schema); + +/// Non-throwing version of compileJsonSchema. +/// +/// \return True if no error, false if error (with the error string set) +/// + +AVRO_DECL bool compileJsonSchema(std::istream &is, ValidSchema &schema, + std::string &error); + +AVRO_DECL ValidSchema compileJsonSchemaFromStream(InputStream& is); + +AVRO_DECL ValidSchema compileJsonSchemaFromMemory(const uint8_t* input, size_t len); + +AVRO_DECL ValidSchema compileJsonSchemaFromString(const char* input); + +AVRO_DECL ValidSchema compileJsonSchemaFromString(const std::string& input); + +AVRO_DECL ValidSchema compileJsonSchemaFromFile(const char* filename); + +} // namespace avro + +#endif |