Safe Haskell | None |
---|---|
Language | Haskell98 |
Text.ProtocolBuffers.Unknown
Description
This module add unknown field support to the library. There are no user API things here, except for advanced spelunking into the data structures which can and have changed with no notice. Importer beware.
- newtype UnknownField = UnknownField (Seq UnknownFieldValue)
- class UnknownMessage msg where
- getUnknownField :: msg -> UnknownField
- putUnknownField :: UnknownField -> msg -> msg
- data UnknownFieldValue = UFV !WireTag !ByteString
- wireSizeUnknownField :: UnknownField -> WireSize
- wirePutUnknownField :: UnknownField -> Put
- catch'Unknown :: (Typeable a, UnknownMessage a) => (WireTag -> a -> Get a) -> WireTag -> a -> Get a
Documentation
newtype UnknownField Source
This is a suposedly opaque type
Constructors
UnknownField (Seq UnknownFieldValue) |
class UnknownMessage msg where Source
Messages that can store unknown fields implement this interface. UnknownField is a supposedly opaque type.
Methods
getUnknownField :: msg -> UnknownField Source
putUnknownField :: UnknownField -> msg -> msg Source
data UnknownFieldValue Source
Constructors
UFV !WireTag !ByteString |
wireSizeUnknownField :: UnknownField -> WireSize Source
This is used by the generated code
wirePutUnknownField :: UnknownField -> Put Source
This is used by the generated code
catch'Unknown :: (Typeable a, UnknownMessage a) => (WireTag -> a -> Get a) -> WireTag -> a -> Get a Source
This is used by the generated code