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

This file was automatically generated by

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


type IdempotencyLevel
    = IDEMPOTENCYUNKNOWN
    | NOSIDEEFFECTS
    | IDEMPOTENT

Is this method side-effect-free (or safe in HTTP parlance), or idempotent, or neither? HTTP based RPC implementation may choose GET verb for safe methods, and PUT verb for idempotent methods instead of the default POST.

decodeIdempotencyLevel : Protobuf.Decode.Decoder IdempotencyLevel

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

defaultIdempotencyLevel : IdempotencyLevel

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

encodeIdempotencyLevel : IdempotencyLevel -> Protobuf.Encode.Encoder

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

fieldNumbersIdempotencyLevel : IdempotencyLevel -> Basics.Int

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

fromInternalIdempotencyLevel : Proto.Google.Protobuf.Internals_.ProtoGoogleProtobufMethodOptionsIdempotencyLevel -> IdempotencyLevel

Convert the internal type Proto__Google__Protobuf__MethodOptions__IdempotencyLevel into a IdempotencyLevel.

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

jsonEncodeIdempotencyLevel : IdempotencyLevel -> Json.Encode.Value

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

toInternalIdempotencyLevel : IdempotencyLevel -> Proto.Google.Protobuf.Internals_.ProtoGoogleProtobufMethodOptionsIdempotencyLevel

Convert a IdempotencyLevel into its internal representation Proto__Google__Protobuf__MethodOptions__IdempotencyLevel.

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