{-# language DataKinds #-}
{-# language NamedFieldPuns #-}
{-# language TypeApplications #-}
module Kafka.Builder.Bounded
( int16
, int32
, int64
, word16
, word32
, varIntNative
, apiKey
, Builder
, append
, word8
, run
) where
import Data.Int (Int8,Int16,Int32,Int64)
import Data.Word (Word16,Word32)
import Data.Bytes.Builder.Bounded (Builder,append,word8,run)
import Data.Word.Zigzag (toZigzagNative)
import Kafka.ApiKey (ApiKey(ApiKey))
import qualified Data.Bytes.Builder.Bounded as Bounded
int64 :: Int64 -> Builder 8
int64 :: Int64 -> Builder 8
int64 = Int64 -> Builder 8
Bounded.int64BE
int32 :: Int32 -> Builder 4
int32 :: Int32 -> Builder 4
int32 = Int32 -> Builder 4
Bounded.int32BE
word32 :: Word32 -> Builder 4
word32 :: Word32 -> Builder 4
word32 = Word32 -> Builder 4
Bounded.word32BE
int16 :: Int16 -> Builder 2
int16 :: Int16 -> Builder 2
int16 = Int16 -> Builder 2
Bounded.int16BE
apiKey :: ApiKey -> Builder 2
apiKey :: ApiKey -> Builder 2
apiKey (ApiKey Int16
k) = Int16 -> Builder 2
Bounded.int16BE Int16
k
word16 :: Word16 -> Builder 2
word16 :: Word16 -> Builder 2
word16 = Word16 -> Builder 2
Bounded.word16BE
varIntNative :: Int -> Builder 10
{-# inline varIntNative #-}
varIntNative :: Int -> Builder 10
varIntNative = Word -> Builder 10
Bounded.wordLEB128 (Word -> Builder 10) -> (Int -> Word) -> Int -> Builder 10
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> Word
toZigzagNative