Go to the documentation of this file.
19 #ifndef avro_Schema_hh__
20 #define avro_Schema_hh__
23 #include "NodeImpl.hh"
38 virtual ~
Schema() =
default;
44 const NodePtr &root()
const {
53 explicit Schema(NodePtr node) : node_(std::move(node)) {}
102 void addField(
const std::string &name,
const Schema &fieldSchema);
104 std::string getDoc()
const;
105 void setDoc(
const std::string &);
111 void addSymbol(
const std::string &symbol);
129 void addType(
const Schema &typeSchema);
@ AVRO_NULL
Definition: Types.hh:40
Definition: Schema.hh:114
Definition: Schema.hh:126
Node is the building block for parse trees.
Definition: Node.hh:90
@ AVRO_LONG
Definition: Types.hh:36
Definition: Schema.hh:132
@ AVRO_FLOAT
Definition: Types.hh:37
@ AVRO_BOOL
Definition: Types.hh:39
@ AVRO_STRING
Definition: Types.hh:33
@ AVRO_BYTES
Definition: Types.hh:34
Definition: Schema.hh:137
Definition: NodeImpl.hh:227
@ AVRO_INT
Definition: Types.hh:35
A bunch of templates and specializations for encoding and decoding specific types.
Definition: AvroParse.hh:30
@ AVRO_DOUBLE
Definition: Types.hh:38
The root Schema object is a base class. Nobody constructs this class directly.
Definition: Schema.hh:36
Definition: Schema.hh:120
Type
The "type" for the schema.
Definition: Types.hh:31
Definition: Schema.hh:108