{-# LANGUAGE CPP ,NoMonomorphismRestriction #-}
module Flat.Encoder (
Encoding,
(<>),
NumBits,
encodersS,
mempty,
strictEncoder,
eTrueF,
eFalseF,
eFloat,
eDouble,
eInteger,
eNatural,
eWord16,
eWord32,
eWord64,
eWord8,
eBits,
eBits16,
eFiller,
eBool,
eTrue,
eFalse,
eBytes,
#if! defined(ghcjs_HOST_OS) && ! defined (ETA_VERSION)
eUTF16,
#endif
eLazyBytes,
eShortBytes,
eInt,
eInt8,
eInt16,
eInt32,
eInt64,
eWord,
eChar,
encodeArrayWith,
encodeListWith,
Size,
arrayBits,
sWord,
sWord8,
sWord16,
sWord32,
sWord64,
sInt,
sInt8,
sInt16,
sInt32,
sInt64,
sNatural,
sInteger,
sFloat,
sDouble,
sChar,
sBytes,
sLazyBytes,
sShortBytes,
#ifndef ghcjs_HOST_OS
sUTF16,
#endif
sFillerMax,
sBool,
sUTF8Max,
eUTF8,
#ifdef ETA_VERSION
trampolineEncoding,
#endif
) where
import Flat.Encoder.Prim ( eTrueF, eFalseF )
import Flat.Encoder.Size(arrayBits)
import Flat.Encoder.Strict
import Flat.Encoder.Types ( NumBits, Size )
#if ! MIN_VERSION_base(4,11,0)
import Data.Semigroup((<>))
#endif