RustQ.NativeEnumDescriptor (rustq v0.6.0)

Copy Markdown View Source

Resolved metadata for a native Rust enum.

A descriptor combines package-scoped enum identity with parsed RustQ.Syn.Enum metadata and, when available, a web source link derived from Cargo metadata.

Summary

Functions

Resolves a native enum through a RustQ.Syn.Index.

Returns descriptor variants as {atom_name, rust_variant} pairs.

Types

t()

@type t() :: %RustQ.NativeEnumDescriptor{
  enum: RustQ.Syn.Enum.t(),
  name: String.t(),
  package: String.t() | nil,
  source_url: String.t() | nil
}

Functions

resolve!(index, name, opts \\ [])

@spec resolve!(RustQ.Syn.Index.t(), String.t(), keyword()) :: t()

Resolves a native enum through a RustQ.Syn.Index.

variants(native_enum_descriptor)

@spec variants(t()) :: [{atom(), String.t()}]

Returns descriptor variants as {atom_name, rust_variant} pairs.