andreasewering / elm-protoc-types / Proto.Google.Protobuf.Field

This file was automatically generated by

To run it, add a dependency via elm install on elm-protocol-buffers version latest or higher.


type Cardinality
    = CARDINALITYUNKNOWN
    | CARDINALITYOPTIONAL
    | CARDINALITYREQUIRED
    | CARDINALITYREPEATED
    | CardinalityUnrecognized_ Basics.Int

Whether a field is optional, required, or repeated.


type Kind
    = TYPEUNKNOWN
    | TYPEDOUBLE
    | TYPEFLOAT
    | TYPEINT64
    | TYPEUINT64
    | TYPEINT32
    | TYPEFIXED64
    | TYPEFIXED32
    | TYPEBOOL
    | TYPESTRING
    | TYPEGROUP
    | TYPEMESSAGE
    | TYPEBYTES
    | TYPEUINT32
    | TYPEENUM
    | TYPESFIXED32
    | TYPESFIXED64
    | TYPESINT32
    | TYPESINT64
    | KindUnrecognized_ Basics.Int

Basic field types.

decodeCardinality : Protobuf.Decode.Decoder Cardinality

Declares how to decode a Cardinality from Bytes. To actually perform the conversion from Bytes, you need to use Protobuf.Decode.decode from eriktim/elm-protocol-buffers.

decodeKind : Protobuf.Decode.Decoder Kind

Declares how to decode a Kind from Bytes. To actually perform the conversion from Bytes, you need to use Protobuf.Decode.decode from eriktim/elm-protocol-buffers.

defaultCardinality : Cardinality

Default for Cardinality. Should only be used for 'required' decoders as an initial value.

defaultKind : Kind

Default for Kind. Should only be used for 'required' decoders as an initial value.

encodeCardinality : Cardinality -> Protobuf.Encode.Encoder

Declares how to encode a Cardinality to Bytes. To actually perform the conversion to Bytes, you need to use Protobuf.Encode.encode from eriktim/elm-protocol-buffers.

encodeKind : Kind -> Protobuf.Encode.Encoder

Declares how to encode a Kind to Bytes. To actually perform the conversion to Bytes, you need to use Protobuf.Encode.encode from eriktim/elm-protocol-buffers.

fieldNumbersCardinality : Cardinality -> Basics.Int

The field numbers for the fields of Cardinality. This is mostly useful for internals, like documentation generation.

fieldNumbersKind : Kind -> Basics.Int

The field numbers for the fields of Kind. This is mostly useful for internals, like documentation generation.

fromInternalCardinality : Proto.Google.Protobuf.Internals_.ProtoGoogleProtobufFieldCardinality -> Cardinality

Convert the internal type Proto__Google__Protobuf__Field__Cardinality into a Cardinality.

Using two different types is necessary to avoid recursive module references while having readable constructor names.

fromInternalKind : Proto.Google.Protobuf.Internals_.ProtoGoogleProtobufFieldKind -> Kind

Convert the internal type Proto__Google__Protobuf__Field__Kind into a Kind.

Using two different types is necessary to avoid recursive module references while having readable constructor names.

jsonEncodeCardinality : Cardinality -> Json.Encode.Value

Encode a Cardinality to JSON. Uses the canonical encoding described here: https://protobuf.dev/programming-guides/proto3/#json

jsonEncodeKind : Kind -> Json.Encode.Value

Encode a Kind to JSON. Uses the canonical encoding described here: https://protobuf.dev/programming-guides/proto3/#json

toInternalCardinality : Cardinality -> Proto.Google.Protobuf.Internals_.ProtoGoogleProtobufFieldCardinality

Convert a Cardinality into its internal representation Proto__Google__Protobuf__Field__Cardinality.

Using two different types is necessary to avoid recursive module references while having readable constructor names.

toInternalKind : Kind -> Proto.Google.Protobuf.Internals_.ProtoGoogleProtobufFieldKind

Convert a Kind into its internal representation Proto__Google__Protobuf__Field__Kind.

Using two different types is necessary to avoid recursive module references while having readable constructor names.