avro-0.6.0.0: Avro serialization support for Haskell
Safe HaskellNone
LanguageHaskell2010

Data.Avro.Encoding.ToAvro

Synopsis

Documentation

newtype Encoder Source #

Constructors

Encoder 

Fields

(.=) :: forall a. ToAvro a => Text -> a -> (Text, Encoder) Source #

class ToAvro a where Source #

Describes how to encode Haskell data types into Avro bytes

Methods

toAvro :: Schema -> a -> Builder Source #

Instances

Instances details
ToAvro Bool Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Bool -> Builder Source #

ToAvro Double Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro Float Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Float -> Builder Source #

ToAvro Int Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Int -> Builder Source #

ToAvro Int32 Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Int32 -> Builder Source #

ToAvro Int64 Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Int64 -> Builder Source #

ToAvro Word8 Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Word8 -> Builder Source #

ToAvro Word16 Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro Word32 Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro Word64 Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro () Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> () -> Builder Source #

ToAvro ByteString Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro ByteString Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro UTCTime Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro Text Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Text -> Builder Source #

ToAvro Text Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Text -> Builder Source #

ToAvro DiffTime Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

ToAvro Day Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Day -> Builder Source #

ToAvro UUID Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> UUID -> Builder Source #

ToAvro a => ToAvro [a] Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> [a] -> Builder Source #

ToAvro a => ToAvro (Maybe a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Maybe a -> Builder Source #

ToAvro a => ToAvro (Identity a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Identity a -> Builder Source #

(Unbox a, ToAvro a) => ToAvro (Vector a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Vector a -> Builder Source #

ToAvro a => ToAvro (Vector a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Vector a -> Builder Source #

(ToAvro a, ToAvro b) => ToAvro (Either a b) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Either a b -> Builder Source #

ToAvro a => ToAvro (Map Text a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Map Text a -> Builder Source #

ToAvro a => ToAvro (HashMap Text a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

(Ix i, ToAvro a) => ToAvro (Array i a) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Array i a -> Builder Source #

(KnownNat p, KnownNat s) => ToAvro (Decimal p s) Source # 
Instance details

Defined in Data.Avro.Encoding.ToAvro

Methods

toAvro :: Schema -> Decimal p s -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c) => ToAvro (Either3 a b c) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either3 a b c -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d) => ToAvro (Either4 a b c d) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either4 a b c d -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d, ToAvro e) => ToAvro (Either5 a b c d e) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either5 a b c d e -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d, ToAvro e, ToAvro f) => ToAvro (Either6 a b c d e f) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either6 a b c d e f -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d, ToAvro e, ToAvro f, ToAvro g) => ToAvro (Either7 a b c d e f g) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either7 a b c d e f g -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d, ToAvro e, ToAvro f, ToAvro g, ToAvro h) => ToAvro (Either8 a b c d e f g h) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either8 a b c d e f g h -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d, ToAvro e, ToAvro f, ToAvro g, ToAvro h, ToAvro i) => ToAvro (Either9 a b c d e f g h i) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either9 a b c d e f g h i -> Builder Source #

(ToAvro a, ToAvro b, ToAvro c, ToAvro d, ToAvro e, ToAvro f, ToAvro g, ToAvro h, ToAvro i, ToAvro j) => ToAvro (Either10 a b c d e f g h i j) Source # 
Instance details

Defined in Data.Avro.EitherN

Methods

toAvro :: Schema -> Either10 a b c d e f g h i j -> Builder Source #