andreasewering/elm-protoc-types/1.1.0

NOTE: the latest version is 1.2.1

Renamed to anmolitor/elm-protoc-types. It is published under that name, and new versions come out there.

Versions published as andreasewering/elm-protoc-types still install under that name. 4 versions of 5 come from the new location (see their notes).

Rerouted (renamed, verified). The GitHub user or repository was renamed. The tag is still there, at the new name. The Lamdera package server serves a copy recovered from https://github.com/anmolitor/elm-protoc-types.

What we checked: The repo moved to github.com/anmolitor/elm-protoc-types. Rebuilt with git archive from commit b536d5cdd243 of https://github.com/anmolitor/elm-protoc-types (zip prefix andreasewering-elm-protoc-types-d37584d/, America/Los_Angeles times): the zip is byte-identical to the one package.elm-lang.org recorded, SHA-1 ee7257d89c55f9a6dbf1dc517f52e33753c41307.

The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.

Details · package.elm-lang.org's zip: https://github.com/andreasewering/elm-protoc-types/zipball/1.1.0/

Proto.Google.Protobuf.FieldOptions

This file was automatically generated by

  • protoc-gen-elm 3.2.3
  • protoc 4.22.2
  • the following specification files: google/protobuf/descriptor.proto

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

type CType
= STRING
| CORD
| STRINGPIECE

CType enumeration

type JSType
= JSNORMAL
| JSSTRING
| JSNUMBER

JSType enumeration

= RETENTIONUNKNOWN
| RETENTIONRUNTIME
| RETENTIONSOURCE

If set to RETENTION_SOURCE, the option will be omitted from the binary. Note: as of January 2023, support for this is in progress and does not yet have an effect (b/264593489).

= TARGETTYPEUNKNOWN
| TARGETTYPEFILE
| TARGETTYPEEXTENSIONRANGE
| TARGETTYPEMESSAGE
| TARGETTYPEFIELD
| TARGETTYPEONEOF
| TARGETTYPEENUM
| TARGETTYPEENUMENTRY
| TARGETTYPESERVICE
| TARGETTYPEMETHOD

This indicates the types of entities that the field may apply to when used as an option. If it is unset, then the field may be freely used as an option on any kind of entity. Note: as of January 2023, support for this is in progress and does not yet have an effect (b/264593489).

decodeCType : Decoder CType

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

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

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

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

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

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

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

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

encodeCType : CType -> Encoder

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

encodeJSType : JSType -> Encoder

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

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

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

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

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

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

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

Convert the internal type Proto__Google__Protobuf__FieldOptions__CType into a CType.

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

Convert the internal type Proto__Google__Protobuf__FieldOptions__JSType into a JSType.

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

Convert the internal type Proto__Google__Protobuf__FieldOptions__OptionRetention into a OptionRetention.

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

Convert the internal type Proto__Google__Protobuf__FieldOptions__OptionTargetType into a OptionTargetType.

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

Convert a CType into its internal representation Proto__Google__Protobuf__FieldOptions__CType.

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

Convert a JSType into its internal representation Proto__Google__Protobuf__FieldOptions__JSType.

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

Convert a OptionRetention into its internal representation Proto__Google__Protobuf__FieldOptions__OptionRetention.

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

Convert a OptionTargetType into its internal representation Proto__Google__Protobuf__FieldOptions__OptionTargetType.

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