wireform-proto-0.2.0.0: src/Proto/Google/Protobuf/Wrappers.hs
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE OverloadedRecordDot #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# OPTIONS_GHC -Wno-unused-imports -Wno-unused-matches -Wno-unused-top-binds #-}
{- | Auto-generated protobuf types from package @google.protobuf@.
__THIS FILE IS AUTO-GENERATED BY wireform. DO NOT EDIT.__
Any manual changes will be overwritten the next time code
generation is run. To modify the types or instances, edit the
@.proto@ source file and re-run the code generator.
-}
module Proto.Google.Protobuf.Wrappers where
import Control.DeepSeq (NFData (..))
import Data.Aeson qualified as Aeson
import Data.Aeson.Key qualified as AesonKey
import Data.Aeson.KeyMap qualified as AesonKM
import Data.Aeson.Types qualified as Aeson
import Data.ByteString (ByteString)
import Data.ByteString qualified as BS
import Data.Hashable (Hashable (..))
import Data.Int (Int32, Int64)
import Data.Map.Strict qualified as Map
import Data.Proxy (Proxy (..))
import Data.Reflection (Given (..), given)
import Data.Text (Text)
import Data.Text qualified as T
import Data.Vector qualified as V
import Data.Vector.Unboxed qualified as VU
import Data.Word (Word32, Word64)
import GHC.Generics (Generic)
import Proto.Decode
import Proto.Encode
import Proto.Extension qualified
import Proto.Internal.Encode.Archetype (
archBool,
archBoolSize,
archBytes,
archBytesSize,
archDouble,
archFixed32,
archFixed32Size,
archFixed64,
archFixed64Size,
archFloat,
archSVarint32,
archSVarint64,
archString,
archStringSize,
archSubmessage,
archSubmessageSize,
archVarint,
archVarintSize,
)
import Proto.Internal.JSON (bytesFieldToJSON, bytesMapFieldToJSON, jsonObject, parseBytesFieldMaybe, parseBytesMapFieldMaybe, parseFieldMaybe, protoBytesToJSON, (.=:))
import Proto.Internal.JSON.Extension qualified as PJExt
import Proto.Internal.Wire (Tag (..), WireType (..))
import Proto.Internal.Wire.Encode (
fieldBoolSize,
fieldBytesSize,
fieldDoubleSize,
fieldFixed32Size,
fieldFixed64Size,
fieldFloatSize,
fieldMessageSize,
fieldSVarint32Size,
fieldSVarint64Size,
fieldTextSize,
fieldVarintSize,
putByteString,
putDouble,
putFixed32,
putFixed64,
putFloat,
putLengthDelimited,
putSVarint32,
putSVarint64,
putTag,
putText,
putVarint,
putVarintSigned,
tagSize,
varintSize,
varintSize32,
zigZag32,
zigZag64,
)
import Proto.Registry (IsMessage)
import Proto.Registry qualified
import Proto.Schema (FieldDescriptor (..), FieldLabel' (..), FieldTypeDescriptor (..), ProtoMessage (..), ScalarFieldType (..), SomeFieldDescriptor (..))
import Wireform.Builder qualified as B
{- | Serialized FileDescriptorProto for this .proto file.
Decode with @Proto.Google.Protobuf.Descriptor.decodeMessage@.
-}
fileDescriptorProtoBytes :: ByteString
fileDescriptorProtoBytes = "\x0a\x1e\x67\x6f\x6f\x67\x6c\x65\x2f\x70\x72\x6f\x74\x6f\x62\x75\x66\x2f\x77\x72\x61\x70\x70\x65\x72\x73\x2e\x70\x72\x6f\x74\x6f\x12\x0f\x67\x6f\x6f\x67\x6c\x65\x2e\x70\x72\x6f\x74\x6f\x62\x75\x66\x22\x1c\x0a\x0b\x44\x6f\x75\x62\x6c\x65\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x01\x22\x1b\x0a\x0a\x46\x6c\x6f\x61\x74\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x02\x22\x1b\x0a\x0a\x49\x6e\x74\x36\x34\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x03\x22\x1c\x0a\x0b\x55\x49\x6e\x74\x36\x34\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x04\x22\x1b\x0a\x0a\x49\x6e\x74\x33\x32\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x05\x22\x1c\x0a\x0b\x55\x49\x6e\x74\x33\x32\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x0d\x22\x1a\x0a\x09\x42\x6f\x6f\x6c\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x08\x22\x1c\x0a\x0b\x53\x74\x72\x69\x6e\x67\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x09\x22\x1b\x0a\x0a\x42\x79\x74\x65\x73\x56\x61\x6c\x75\x65\x12\x0d\x0a\x05\x76\x61\x6c\x75\x65\x18\x01\x20\x01\x28\x0c\x62\x06\x70\x72\x6f\x74\x6f\x33"
data DoubleValue = DoubleValue
{ doubleValueValue :: {-# UNPACK #-} !Double
, doubleValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultDoubleValue :: DoubleValue
defaultDoubleValue =
DoubleValue
{ doubleValueValue = 0
, doubleValueUnknownFields = []
}
instance MessageEncode DoubleValue where
buildMessage msg =
(if msg.doubleValueValue == 0 then mempty else archDouble 9 msg.doubleValueValue)
<> encodeUnknownFields msg.doubleValueUnknownFields
instance MessageSize DoubleValue where
messageSize msg =
(if msg.doubleValueValue == 0 then 0 else archFixed64Size)
+ unknownFieldsSize msg.doubleValueUnknownFields
instance MessageDecode DoubleValue where
{-# INLINE messageDecoder #-}
messageDecoder = loop 0 []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (DoubleValue {doubleValueValue = acc_0, doubleValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- decodeFieldDouble
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage DoubleValue where
protoMessageName _ = "google.protobuf.DoubleValue"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultDoubleValue
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType DoubleField
, fdLabel = LabelOptional
, fdGet = doubleValueValue
, fdSet = \v m -> m {doubleValueValue = v}
}
)
]
instance IsMessage DoubleValue
instance Aeson.ToJSON DoubleValue where
toJSON msg =
jsonObject
[ "value" .=: msg.doubleValueValue
]
instance Aeson.FromJSON DoubleValue where
parseJSON = Aeson.withObject "DoubleValue" $ \obj -> do
fld_doubleValueValue <- parseFieldMaybe obj "value"
pure
defaultDoubleValue
{ doubleValueValue = maybe (doubleValueValue defaultDoubleValue) id fld_doubleValueValue
, doubleValueUnknownFields = []
}
instance Hashable DoubleValue where
hashWithSalt salt msg = hashWithSalt (salt) msg.doubleValueValue
instance Proto.Extension.HasExtensions DoubleValue where
messageUnknownFields = doubleValueUnknownFields
setMessageUnknownFields !ufs msg = msg {doubleValueUnknownFields = ufs}
instance Semigroup DoubleValue where
a <> b =
DoubleValue
{ doubleValueValue = if b.doubleValueValue == 0 then a.doubleValueValue else b.doubleValueValue
, doubleValueUnknownFields = a.doubleValueUnknownFields <> b.doubleValueUnknownFields
}
instance Monoid DoubleValue where
mempty = defaultDoubleValue
data FloatValue = FloatValue
{ floatValueValue :: {-# UNPACK #-} !Float
, floatValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultFloatValue :: FloatValue
defaultFloatValue =
FloatValue
{ floatValueValue = 0
, floatValueUnknownFields = []
}
instance MessageEncode FloatValue where
buildMessage msg =
(if msg.floatValueValue == 0 then mempty else archFloat 13 msg.floatValueValue)
<> encodeUnknownFields msg.floatValueUnknownFields
instance MessageSize FloatValue where
messageSize msg =
(if msg.floatValueValue == 0 then 0 else archFixed32Size)
+ unknownFieldsSize msg.floatValueUnknownFields
instance MessageDecode FloatValue where
{-# INLINE messageDecoder #-}
messageDecoder = loop 0 []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (FloatValue {floatValueValue = acc_0, floatValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- decodeFieldFloat
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage FloatValue where
protoMessageName _ = "google.protobuf.FloatValue"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultFloatValue
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType FloatField
, fdLabel = LabelOptional
, fdGet = floatValueValue
, fdSet = \v m -> m {floatValueValue = v}
}
)
]
instance IsMessage FloatValue
instance Aeson.ToJSON FloatValue where
toJSON msg =
jsonObject
[ "value" .=: msg.floatValueValue
]
instance Aeson.FromJSON FloatValue where
parseJSON = Aeson.withObject "FloatValue" $ \obj -> do
fld_floatValueValue <- parseFieldMaybe obj "value"
pure
defaultFloatValue
{ floatValueValue = maybe (floatValueValue defaultFloatValue) id fld_floatValueValue
, floatValueUnknownFields = []
}
instance Hashable FloatValue where
hashWithSalt salt msg = hashWithSalt (salt) msg.floatValueValue
instance Proto.Extension.HasExtensions FloatValue where
messageUnknownFields = floatValueUnknownFields
setMessageUnknownFields !ufs msg = msg {floatValueUnknownFields = ufs}
instance Semigroup FloatValue where
a <> b =
FloatValue
{ floatValueValue = if b.floatValueValue == 0 then a.floatValueValue else b.floatValueValue
, floatValueUnknownFields = a.floatValueUnknownFields <> b.floatValueUnknownFields
}
instance Monoid FloatValue where
mempty = defaultFloatValue
data Int64Value = Int64Value
{ int64ValueValue :: {-# UNPACK #-} !Int64
, int64ValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultInt64Value :: Int64Value
defaultInt64Value =
Int64Value
{ int64ValueValue = 0
, int64ValueUnknownFields = []
}
instance MessageEncode Int64Value where
buildMessage msg =
(if msg.int64ValueValue == 0 then mempty else archVarint 8 (fromIntegral msg.int64ValueValue))
<> encodeUnknownFields msg.int64ValueUnknownFields
instance MessageSize Int64Value where
messageSize msg =
(if msg.int64ValueValue == 0 then 0 else archVarintSize (fromIntegral msg.int64ValueValue))
+ unknownFieldsSize msg.int64ValueUnknownFields
instance MessageDecode Int64Value where
{-# INLINE messageDecoder #-}
messageDecoder = loop 0 []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (Int64Value {int64ValueValue = acc_0, int64ValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- (fromIntegral <$> decodeFieldVarint)
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage Int64Value where
protoMessageName _ = "google.protobuf.Int64Value"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultInt64Value
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType Int64Field
, fdLabel = LabelOptional
, fdGet = int64ValueValue
, fdSet = \v m -> m {int64ValueValue = v}
}
)
]
instance IsMessage Int64Value
instance Aeson.ToJSON Int64Value where
toJSON msg =
jsonObject
[ "value" .=: msg.int64ValueValue
]
instance Aeson.FromJSON Int64Value where
parseJSON = Aeson.withObject "Int64Value" $ \obj -> do
fld_int64ValueValue <- parseFieldMaybe obj "value"
pure
defaultInt64Value
{ int64ValueValue = maybe (int64ValueValue defaultInt64Value) id fld_int64ValueValue
, int64ValueUnknownFields = []
}
instance Hashable Int64Value where
hashWithSalt salt msg = hashWithSalt (salt) msg.int64ValueValue
instance Proto.Extension.HasExtensions Int64Value where
messageUnknownFields = int64ValueUnknownFields
setMessageUnknownFields !ufs msg = msg {int64ValueUnknownFields = ufs}
instance Semigroup Int64Value where
a <> b =
Int64Value
{ int64ValueValue = if b.int64ValueValue == 0 then a.int64ValueValue else b.int64ValueValue
, int64ValueUnknownFields = a.int64ValueUnknownFields <> b.int64ValueUnknownFields
}
instance Monoid Int64Value where
mempty = defaultInt64Value
data UInt64Value = UInt64Value
{ uInt64ValueValue :: {-# UNPACK #-} !Word64
, uInt64ValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultUInt64Value :: UInt64Value
defaultUInt64Value =
UInt64Value
{ uInt64ValueValue = 0
, uInt64ValueUnknownFields = []
}
instance MessageEncode UInt64Value where
buildMessage msg =
(if msg.uInt64ValueValue == 0 then mempty else archVarint 8 msg.uInt64ValueValue)
<> encodeUnknownFields msg.uInt64ValueUnknownFields
instance MessageSize UInt64Value where
messageSize msg =
(if msg.uInt64ValueValue == 0 then 0 else archVarintSize msg.uInt64ValueValue)
+ unknownFieldsSize msg.uInt64ValueUnknownFields
instance MessageDecode UInt64Value where
{-# INLINE messageDecoder #-}
messageDecoder = loop 0 []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (UInt64Value {uInt64ValueValue = acc_0, uInt64ValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- decodeFieldVarint
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage UInt64Value where
protoMessageName _ = "google.protobuf.UInt64Value"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultUInt64Value
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType UInt64Field
, fdLabel = LabelOptional
, fdGet = uInt64ValueValue
, fdSet = \v m -> m {uInt64ValueValue = v}
}
)
]
instance IsMessage UInt64Value
instance Aeson.ToJSON UInt64Value where
toJSON msg =
jsonObject
[ "value" .=: msg.uInt64ValueValue
]
instance Aeson.FromJSON UInt64Value where
parseJSON = Aeson.withObject "UInt64Value" $ \obj -> do
fld_uInt64ValueValue <- parseFieldMaybe obj "value"
pure
defaultUInt64Value
{ uInt64ValueValue = maybe (uInt64ValueValue defaultUInt64Value) id fld_uInt64ValueValue
, uInt64ValueUnknownFields = []
}
instance Hashable UInt64Value where
hashWithSalt salt msg = hashWithSalt (salt) msg.uInt64ValueValue
instance Proto.Extension.HasExtensions UInt64Value where
messageUnknownFields = uInt64ValueUnknownFields
setMessageUnknownFields !ufs msg = msg {uInt64ValueUnknownFields = ufs}
instance Semigroup UInt64Value where
a <> b =
UInt64Value
{ uInt64ValueValue = if b.uInt64ValueValue == 0 then a.uInt64ValueValue else b.uInt64ValueValue
, uInt64ValueUnknownFields = a.uInt64ValueUnknownFields <> b.uInt64ValueUnknownFields
}
instance Monoid UInt64Value where
mempty = defaultUInt64Value
data Int32Value = Int32Value
{ int32ValueValue :: {-# UNPACK #-} !Int32
, int32ValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultInt32Value :: Int32Value
defaultInt32Value =
Int32Value
{ int32ValueValue = 0
, int32ValueUnknownFields = []
}
instance MessageEncode Int32Value where
buildMessage msg =
(if msg.int32ValueValue == 0 then mempty else archVarint 8 (fromIntegral msg.int32ValueValue))
<> encodeUnknownFields msg.int32ValueUnknownFields
instance MessageSize Int32Value where
messageSize msg =
(if msg.int32ValueValue == 0 then 0 else archVarintSize (fromIntegral msg.int32ValueValue))
+ unknownFieldsSize msg.int32ValueUnknownFields
instance MessageDecode Int32Value where
{-# INLINE messageDecoder #-}
messageDecoder = loop 0 []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (Int32Value {int32ValueValue = acc_0, int32ValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- (fromIntegral <$> decodeFieldVarint)
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage Int32Value where
protoMessageName _ = "google.protobuf.Int32Value"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultInt32Value
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType Int32Field
, fdLabel = LabelOptional
, fdGet = int32ValueValue
, fdSet = \v m -> m {int32ValueValue = v}
}
)
]
instance IsMessage Int32Value
instance Aeson.ToJSON Int32Value where
toJSON msg =
jsonObject
[ "value" .=: msg.int32ValueValue
]
instance Aeson.FromJSON Int32Value where
parseJSON = Aeson.withObject "Int32Value" $ \obj -> do
fld_int32ValueValue <- parseFieldMaybe obj "value"
pure
defaultInt32Value
{ int32ValueValue = maybe (int32ValueValue defaultInt32Value) id fld_int32ValueValue
, int32ValueUnknownFields = []
}
instance Hashable Int32Value where
hashWithSalt salt msg = hashWithSalt (salt) msg.int32ValueValue
instance Proto.Extension.HasExtensions Int32Value where
messageUnknownFields = int32ValueUnknownFields
setMessageUnknownFields !ufs msg = msg {int32ValueUnknownFields = ufs}
instance Semigroup Int32Value where
a <> b =
Int32Value
{ int32ValueValue = if b.int32ValueValue == 0 then a.int32ValueValue else b.int32ValueValue
, int32ValueUnknownFields = a.int32ValueUnknownFields <> b.int32ValueUnknownFields
}
instance Monoid Int32Value where
mempty = defaultInt32Value
data UInt32Value = UInt32Value
{ uInt32ValueValue :: {-# UNPACK #-} !Word32
, uInt32ValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultUInt32Value :: UInt32Value
defaultUInt32Value =
UInt32Value
{ uInt32ValueValue = 0
, uInt32ValueUnknownFields = []
}
instance MessageEncode UInt32Value where
buildMessage msg =
(if msg.uInt32ValueValue == 0 then mempty else archVarint 8 (fromIntegral msg.uInt32ValueValue))
<> encodeUnknownFields msg.uInt32ValueUnknownFields
instance MessageSize UInt32Value where
messageSize msg =
(if msg.uInt32ValueValue == 0 then 0 else archVarintSize (fromIntegral msg.uInt32ValueValue))
+ unknownFieldsSize msg.uInt32ValueUnknownFields
instance MessageDecode UInt32Value where
{-# INLINE messageDecoder #-}
messageDecoder = loop 0 []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (UInt32Value {uInt32ValueValue = acc_0, uInt32ValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- (fromIntegral <$> decodeFieldVarint)
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage UInt32Value where
protoMessageName _ = "google.protobuf.UInt32Value"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultUInt32Value
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType UInt32Field
, fdLabel = LabelOptional
, fdGet = uInt32ValueValue
, fdSet = \v m -> m {uInt32ValueValue = v}
}
)
]
instance IsMessage UInt32Value
instance Aeson.ToJSON UInt32Value where
toJSON msg =
jsonObject
[ "value" .=: msg.uInt32ValueValue
]
instance Aeson.FromJSON UInt32Value where
parseJSON = Aeson.withObject "UInt32Value" $ \obj -> do
fld_uInt32ValueValue <- parseFieldMaybe obj "value"
pure
defaultUInt32Value
{ uInt32ValueValue = maybe (uInt32ValueValue defaultUInt32Value) id fld_uInt32ValueValue
, uInt32ValueUnknownFields = []
}
instance Hashable UInt32Value where
hashWithSalt salt msg = hashWithSalt (salt) msg.uInt32ValueValue
instance Proto.Extension.HasExtensions UInt32Value where
messageUnknownFields = uInt32ValueUnknownFields
setMessageUnknownFields !ufs msg = msg {uInt32ValueUnknownFields = ufs}
instance Semigroup UInt32Value where
a <> b =
UInt32Value
{ uInt32ValueValue = if b.uInt32ValueValue == 0 then a.uInt32ValueValue else b.uInt32ValueValue
, uInt32ValueUnknownFields = a.uInt32ValueUnknownFields <> b.uInt32ValueUnknownFields
}
instance Monoid UInt32Value where
mempty = defaultUInt32Value
data BoolValue = BoolValue
{ boolValueValue :: {-# UNPACK #-} !Bool
, boolValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultBoolValue :: BoolValue
defaultBoolValue =
BoolValue
{ boolValueValue = False
, boolValueUnknownFields = []
}
instance MessageEncode BoolValue where
buildMessage msg =
(if msg.boolValueValue == False then mempty else archBool 8 msg.boolValueValue)
<> encodeUnknownFields msg.boolValueUnknownFields
instance MessageSize BoolValue where
messageSize msg =
(if msg.boolValueValue == False then 0 else archBoolSize)
+ unknownFieldsSize msg.boolValueUnknownFields
instance MessageDecode BoolValue where
{-# INLINE messageDecoder #-}
messageDecoder = loop False []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (BoolValue {boolValueValue = acc_0, boolValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- decodeFieldBool
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage BoolValue where
protoMessageName _ = "google.protobuf.BoolValue"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultBoolValue
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType BoolField
, fdLabel = LabelOptional
, fdGet = boolValueValue
, fdSet = \v m -> m {boolValueValue = v}
}
)
]
instance IsMessage BoolValue
instance Aeson.ToJSON BoolValue where
toJSON msg =
jsonObject
[ "value" .=: msg.boolValueValue
]
instance Aeson.FromJSON BoolValue where
parseJSON = Aeson.withObject "BoolValue" $ \obj -> do
fld_boolValueValue <- parseFieldMaybe obj "value"
pure
defaultBoolValue
{ boolValueValue = maybe (boolValueValue defaultBoolValue) id fld_boolValueValue
, boolValueUnknownFields = []
}
instance Hashable BoolValue where
hashWithSalt salt msg = hashWithSalt (salt) msg.boolValueValue
instance Proto.Extension.HasExtensions BoolValue where
messageUnknownFields = boolValueUnknownFields
setMessageUnknownFields !ufs msg = msg {boolValueUnknownFields = ufs}
instance Semigroup BoolValue where
a <> b =
BoolValue
{ boolValueValue = if b.boolValueValue == False then a.boolValueValue else b.boolValueValue
, boolValueUnknownFields = a.boolValueUnknownFields <> b.boolValueUnknownFields
}
instance Monoid BoolValue where
mempty = defaultBoolValue
data StringValue = StringValue
{ stringValueValue :: !Text
, stringValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultStringValue :: StringValue
defaultStringValue =
StringValue
{ stringValueValue = ""
, stringValueUnknownFields = []
}
instance MessageEncode StringValue where
buildMessage msg =
(if msg.stringValueValue == T.empty then mempty else archString 10 msg.stringValueValue)
<> encodeUnknownFields msg.stringValueUnknownFields
instance MessageSize StringValue where
messageSize msg =
(if msg.stringValueValue == T.empty then 0 else archStringSize msg.stringValueValue)
+ unknownFieldsSize msg.stringValueUnknownFields
instance MessageDecode StringValue where
{-# INLINE messageDecoder #-}
messageDecoder = loop "" []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (StringValue {stringValueValue = acc_0, stringValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- decodeFieldString
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage StringValue where
protoMessageName _ = "google.protobuf.StringValue"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultStringValue
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType StringField
, fdLabel = LabelOptional
, fdGet = stringValueValue
, fdSet = \v m -> m {stringValueValue = v}
}
)
]
instance IsMessage StringValue
instance Aeson.ToJSON StringValue where
toJSON msg =
jsonObject
[ "value" .=: msg.stringValueValue
]
instance Aeson.FromJSON StringValue where
parseJSON = Aeson.withObject "StringValue" $ \obj -> do
fld_stringValueValue <- parseFieldMaybe obj "value"
pure
defaultStringValue
{ stringValueValue = maybe (stringValueValue defaultStringValue) id fld_stringValueValue
, stringValueUnknownFields = []
}
instance Hashable StringValue where
hashWithSalt salt msg = hashWithSalt (salt) msg.stringValueValue
instance Proto.Extension.HasExtensions StringValue where
messageUnknownFields = stringValueUnknownFields
setMessageUnknownFields !ufs msg = msg {stringValueUnknownFields = ufs}
instance Semigroup StringValue where
a <> b =
StringValue
{ stringValueValue = if b.stringValueValue == "" then a.stringValueValue else b.stringValueValue
, stringValueUnknownFields = a.stringValueUnknownFields <> b.stringValueUnknownFields
}
instance Monoid StringValue where
mempty = defaultStringValue
data BytesValue = BytesValue
{ bytesValueValue :: !ByteString
, bytesValueUnknownFields :: ![UnknownField]
}
deriving stock (Show, Eq, Generic)
deriving anyclass (NFData)
defaultBytesValue :: BytesValue
defaultBytesValue =
BytesValue
{ bytesValueValue = ""
, bytesValueUnknownFields = []
}
instance MessageEncode BytesValue where
buildMessage msg =
(if BS.null msg.bytesValueValue then mempty else archBytes 10 msg.bytesValueValue)
<> encodeUnknownFields msg.bytesValueUnknownFields
instance MessageSize BytesValue where
messageSize msg =
(if BS.null msg.bytesValueValue then 0 else archBytesSize msg.bytesValueValue)
+ unknownFieldsSize msg.bytesValueUnknownFields
instance MessageDecode BytesValue where
{-# INLINE messageDecoder #-}
messageDecoder = loop "" []
where
loop acc_0 acc_unknown_ =
withTagM
(pure (BytesValue {bytesValueValue = acc_0, bytesValueUnknownFields = reverse acc_unknown_}))
( \fn wt -> case fn of
1 -> do
v <- decodeFieldBytes
loop v acc_unknown_
_ -> do
uf <- captureUnknownField fn (toEnum wt)
loop acc_0 (uf : acc_unknown_)
)
instance ProtoMessage BytesValue where
protoMessageName _ = "google.protobuf.BytesValue"
protoPackageName _ = "google.protobuf"
protoDefaultValue = defaultBytesValue
protoFileDescriptorBytes _ = fileDescriptorProtoBytes
protoFieldDescriptors _ =
Map.fromList
[
( 1
, SomeField
FieldDescriptor
{ fdName = "value"
, fdNumber = 1
, fdTypeDesc = ScalarType BytesField
, fdLabel = LabelOptional
, fdGet = bytesValueValue
, fdSet = \v m -> m {bytesValueValue = v}
}
)
]
instance IsMessage BytesValue
instance Aeson.ToJSON BytesValue where
toJSON msg =
jsonObject
[ bytesFieldToJSON "value" msg.bytesValueValue
]
instance Aeson.FromJSON BytesValue where
parseJSON = Aeson.withObject "BytesValue" $ \obj -> do
fld_bytesValueValue <- parseBytesFieldMaybe obj "value"
pure
defaultBytesValue
{ bytesValueValue = maybe (bytesValueValue defaultBytesValue) id fld_bytesValueValue
, bytesValueUnknownFields = []
}
instance Hashable BytesValue where
hashWithSalt salt msg = hashWithSalt (salt) msg.bytesValueValue
instance Proto.Extension.HasExtensions BytesValue where
messageUnknownFields = bytesValueUnknownFields
setMessageUnknownFields !ufs msg = msg {bytesValueUnknownFields = ufs}
instance Semigroup BytesValue where
a <> b =
BytesValue
{ bytesValueValue = if b.bytesValueValue == "" then a.bytesValueValue else b.bytesValueValue
, bytesValueUnknownFields = a.bytesValueUnknownFields <> b.bytesValueUnknownFields
}
instance Monoid BytesValue where
mempty = defaultBytesValue