| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Language.Avro.Types
Description
Language definition for AVRO (.avdl) files,
as defined in http://avro.apache.org/docs/1.8.2/spec.html.
Documentation
Type for methods/messages that belong to a protocol.
Constructors
| Method | |
data ImportType Source #
Type for the possible import types in Protocol.
Constructors
| IdlImport Text | |
| ProtocolImport Text | |
| SchemaImport Text |
Instances
| Eq ImportType Source # | |
Defined in Language.Avro.Types | |
| Show ImportType Source # | |
Defined in Language.Avro.Types Methods showsPrec :: Int -> ImportType -> ShowS # show :: ImportType -> String # showList :: [ImportType] -> ShowS # | |
data Annotation Source #
Type for special annotations.
Constructors
| Annotation | |
Instances
| Eq Annotation Source # | |
Defined in Language.Avro.Types | |
| Show Annotation Source # | |
Defined in Language.Avro.Types Methods showsPrec :: Int -> Annotation -> ShowS # show :: Annotation -> String # showList :: [Annotation] -> ShowS # | |
Newtype for the namespace of methods and protocols.
Whole definition of protocol.
Constructors
| Protocol | |
An Avro schema is either
- A "JSON object in the form
{"type":"typeName" ...} - A "JSON string, naming a defined type" (basic type without free variables)
- A "JSON array, representing a union"
N.B. It is possible to create a Haskell value (of Schema type) that is
not a valid Avro schema by violating one of the above or one of the
conditions called out in validateSchema.