#enums

  1. strum

    macros for working with enums and strings

    v0.27.2 22.7M #enums-string #proc-macro #string #string-macro #enums
  2. num_enum

    Procedural macros to make inter-operation between primitives and enums easier

    v0.7.5 9.6M #convert #ffi #safe #safe-ffi #enums
  3. synstructure

    Helper methods and macros for custom derives

    v0.13.2 24.6M #macro-derive #syn #enums #expand-substructure
  4. enumflags2

    Enum-based bit flags

    v0.7.12 3.7M #bit-flags #enums #bitflags
  5. enum-map

    A map with C-like enum keys represented internally as an array

    v3.0.0-beta.2 1.8M #data-structures #enums #no-std
  6. enumset

    creating compact sets of enums

    v1.1.10 1.5M #bit-set #enums #bitset
  7. enum-iterator

    Tools to iterate over all values of a type (e.g. all variants of an enumeration)

    v2.3.0 1.3M #iterator #enums #cardinality #enumerate
  8. bcs

    Binary Canonical Serialization (BCS)

    v0.1.6 328K #binary-canonical-serialization #limit #input #enums #variable-length #blockchain #recursion-depth #binary-data-serialization #key-value-store
  9. enum-ordinalize

    enables enums to not only obtain the ordinal values of their variants but also allows for the construction of enums from an ordinal value

    v4.3.2 4.8M #ordinal #enums #ordinalize #numbers
  10. packed_struct

    Binary-level structure packing and unpacking generator

    v0.10.1 593K #bit-packing #enums #packing #serialization
  11. prost-build

    Generate Prost annotated Rust types from Protocol Buffers files

    v0.14.3 14.4M #protobuf #protoc #prost #collection #enums #cargo-build #proto-file
  12. auto_enums

    allow multiple return types by automatically generated enum

    v0.8.7 521K #macro-derive #no-alloc #enums
  13. wasm-wave

    WebAssembly Value Encoding

    v0.245.1 70K #encoding #wasm-component-model #enums #record #arguments #wit #nan #multi-line
  14. flagset

    Data types and a macro for generating enumeration-based bit flags

    v0.4.7 1.8M #enums #bitflags #enumflags
  15. derive_utils

    A procedural macro helper for easily writing derive macros for enums

    v0.15.0 625K #proc-macro #macro-derive #enums
  16. serde_variant

    Retrieve serde provided variant names for enum objects

    v0.1.3 108K #enum-variant #enums #serde #serialization
  17. try_match

    Fallible pattern matching with a function-like syntax

    v0.4.2 58K #pattern-matching #match-enums #enums #match-variant #macro #macro-variant
  18. argyle

    A lightweight, agnostic CLI argument parser

    v0.15.0 73K #cli-argument-parser #arguments-parser #enums #macro #generating #deps #cli-parser #cli-arguments #stderr #preview
  19. caret

    Macros for declaring non-exhaustive C-style enumerations, with named members

    v0.8.2 12K #enums #macro
  20. spirv

    Rust definition of SPIR-V structs and enums

    v0.3.0+sdk-1.3.268.0 827K #enums #struct
  21. repack

    Powerful model codegen

    v0.99.0 800 #blueprint #codegen #enums #schema-definition #struct-fields #template-engine #typescript #snippets #data-model #inheritance
  22. derive-new

    #[derive(new)] implements simple constructor functions for structs and enums

    v0.7.0 847K #struct #macro-derive #constructor #functions-for-structs #enums
  23. ordinal-map

    Ordinal trait to map values to integers and efficient maps and sets for such types

    v0.1.10 180K #map-set #ordinal #integer #enums
  24. kinded

    Generate enums with same variants, but without data

    v0.4.1 93K #macro-derive #enums #kinds
  25. parse-variants

    Derive the syn::parse::Parse trait for enumerations and use it to comfortably parse a variant of the enumeration

    v1.0.8 7.4K #enum-variant #enums #speculative #either
  26. enum-display

    A macro to derive Display for enums

    v0.2.1 148K #enums #macro-derive #display
  27. tinkoff-invest

    tinkoff invest library

    v2.34.0 #tinkoff #invest #order-book #figi #enums #candlestick #market-data #cache
  28. linearize

    Types that are enumerable and an array-backed map

    v0.1.5 3.9K #data-structures #enums
  29. bitflag-attr

    A macro to generate bitflags structures from C-like enums

    v0.13.0 #bit-flags #bitmask #enums #bitflags
  30. enum-assoc

    Procedural macro to associate constants with enum variants

    v1.3.0 132K #proc-macro #constant #enums
  31. enum-table

    creating tables with enums as key

    v3.0.0 210 #hash-map #enums
  32. subenum

    A proc-macro to create subsets of enums, that can be converted to and from

    v1.1.3 130K #proc-macro #no-std #enums
  33. result-like

    Option/Result-like monad interface for your own enum

    v0.5.1 17K #enums #monads #macro #options #result
  34. dtype_dispatch

    Macro builder for working with data types

    v0.2.1 65K #enums #dtype #generic #dispatch
  35. as_variant

    macro to convert enums with newtype variants to Options

    v1.3.0 21K #newtype #enums #macro
  36. thiserror-no-std

    derive(Error)

    v2.0.2 65K #error-handling #enums #struct #io #macro-derive
  37. vst3

    Rust bindings for the VST 3 API

    v0.3.0 550 #bindings #bindings-for-vst #object #namespaces #enums #guid #iid #struct-definition
  38. dtype_variant

    Enables type-safe enum variants with shared type tokens across multiple enums, allowing for synchronized variant types and powerful downcasting capabilities between related enums

    v0.0.14 1.1K #pattern-matching #enum-variant #type-safety #enums
  39. statum

    Compile-time state machine magic for Rust: Zero-boilerplate typestate patterns with automatic transition validation

    v0.3.5 #finite-state-machine #enums #fsm #finite-state #state-machine
  40. loft

    embedded scripting language

    v0.0.1-alpha.22 1.3K #embedded-scripting #interpreter #enums #macro #performance-optimization #pattern-matching #garbage-collection #help-improve #ownership-and-borrowing
  41. hodgepodge

    Lightweight dataset crate of enums for prototyping, teaching, and experimentation

    v0.2.0 #dataset #enums #prototype #teaching #education
  42. boolean-enums

    Generate enums with Yes and No variants. Supports no_std and serde.

    v0.4.1 4.3K #yes-no #enums #boolean #bool
  43. sumtype

    Generate zerocost sumtype of iterators or closures

    v0.2.6 #zero-cost #iterator #enums #union-types #macro #no-alloc
  44. tf2-enum

    enumerated types for models related to the Team Fortress 2 item schema

    v0.13.0 750 #team-fortress #steam #tf2 #enums
  45. beve

    (Binary Efficient Versatile Encoding) specification with serde support

    v0.4.0 #binary-encoding #typed-arrays #convert-json #specification #enums #serde #object-key #serde-json
  46. benzina

    Various helper types and macros for diesel

    v0.5.1 650 #macro #postgresql #json #diesel #enums
  47. enum-collections

    Collections data structures optimized for Enum, initializable at runtime

    v1.7.0 200 #hash-map #enum-map #collection #enums
  48. ptr-union

    Pointer union types the size of a pointer by storing the tag in the alignment bits

    v2.3.0 #pointers #enums #thin-pointers #union
  49. gratte

    macros for working with enums and strings; forked from strum

    v1.2.0 160 #proc-macro #enums-string #string #enums #string-macro
  50. variant_count

    Derive macro for enum which adds to it the count of variants

    v1.2.0 180K #enums #count
  51. zugferd-code-lists

    ZUGFeRD code lists, e.g. languages enum, currencies enum, countries enum, etc.

    v0.1.19 #enums #zug-fe-rd #factur-x #code-lists
  52. io-enum

    #[derive(Read, Write, Seek, BufRead)] for enums

    v1.2.0 60K #bufread #enums #derive #derive-enums #io
  53. enums

    Enumerate trait for vector and slice in rust. It abstracts chain methods like .iter().enumerate().collect() into a clean, reusable method also called enums like python enumerate.

    v0.5.1 260 #iterator #enumerate #utility
  54. enumeration

    An extension to rust enum

    v3.3.2 1.0K #enums #extension
  55. wyre

    wyre serialization and deserialization library

    v0.2.16 850 #messagepack #serialization #enums #accounting #vec
  56. matched_enums

    A macro that provides the option to bin enum attribute to match-statements. This makes it easier to convert values into enums.

    v1.3.0 230 #proc-macro #enums #macro
  57. sigma-enum

    A macro to simulate sigma types with enums

    v0.1.2 #enums #derive #dependent-types
  58. futures-enum

    #[derive(Future, Stream, Sink, AsyncRead, AsyncWrite, AsyncSeek, AsyncBufRead)] for enums

    v0.1.18 30K #derive #enums #derive-enums #no-alloc
  59. enumcapsulate

    Safe casting for newtype enums and their variants

    v0.6.3 650 #newtype #cast #enums #encapsulation
  60. enum-derived

    Generate random instances of your enums and structs

    v0.9.2 4.1K #random #enums #struct #derive
  61. codama-syn-helpers

    Extension of syn for Codama

    v0.7.2 550 #codama #syn #file #helper #enums #proc-macro #korok
  62. either-or-both

    The enums EitherOrBoth with the three variants Left, Right, Both and Either with the Left and Right variants

    v0.3.0 1.0K #enums #no-std #data-structures
  63. open-enum

    An attribute for generating "open" fieldless enums, those that accept any integer value, by using a newtype struct and associated constants

    v0.5.2 26K #enums #newtype #open #integer
  64. bevy_state_plugin_generator

    A build-dependency that generates a Bevy State Plugin from a simple state definition

    v1.4.4 #state-plugin #bevy-plugin #generator #define #enums #build-dependency
  65. from_variants

    Rust macro to automatically generate conversions for newtype enums

    v1.0.2 9.8K #enum-variants #enums #newtype #convert #automatic
  66. quither

    A flexible enum-based utility for representing values that may be on the left, right, neither, or both sides

    v0.7.0 600 #enums #either
  67. nutype-enum

    Helper macro to create a nutype that behaves like an enum

    v0.1.5 3.7K #enums #nutype
  68. terra-items

    enum contatining terraria items and prefixes

    v0.2.5 280 #prefix #item #terraria #enums
  69. penum

    Make enum conform to a given pattern

    v0.1.30 1.6K #proc-macro #shape #enums #pattern
  70. plectrum

    An easy way to represent lookup tables in a db as rust enums

    v0.2.0 #lookup-tables #enums
  71. erased-discriminant

    Type-erased version of core::mem::Discriminant<T>

    v1.0.1 77K #discriminant #type-erased #core-mem #version #enums
  72. pattern-wishcast

    Pattern types emulation for conditional variants using conditional never types

    v0.0.1-pre.7 #pattern #enums #emulation #conditional #unstable #proc-macro #subtyping #expression-evaluator #upcasting
  73. is-macro

    Derive methods for using custom enums like Option / Result

    v0.3.7 2.2M #enums #generics #information
  74. omcp

    functions

    v0.2.0 #input-schema #mcp #json-rpc #properties #enums #mcp-server #todo-list #weather #bearer-token
  75. babel

    Provide Rust enums for Groq, SambaNova, Openrouter's llm model names

    v0.0.11 500 #llm #model #enums #groq #openrouter
  76. enum_dict

    Efficient enum-indexed dictionaries

    v0.7.0 #dictionary #enum-indexed #enums #key-value #serde #color-blue
  77. serde-implicit

    the serde(untagged) you wish you had

    v0.3.0 1.0K #untagged #enums #tagged #content #serde-derive #deserialize #serde-error #serialization #text-content
  78. serde_content_ref

    Serde deserializer for reference content

    v0.1.0 #deserialize #content #reference #deserializer #enums
  79. frunk-enum-core

    Implemenation of genericized enums for use with frunk

    v0.3.0 3.9K #frunk #enums #data-structures #define #representation #implemenation
  80. dispatch_map

    Type-safe, declarative dispatch maps for Rust configuration with automatic glue and zero boilerplate

    v0.1.3 110 #deserialize #enums #serde #config #map
  81. enum-update

    representing state changes as enums

    v0.2.0 #proc-macro #state #enums
  82. data-classes

    Abbreviation of #[derive(xxx)]

    v0.0.0-19 #data #rkyv #derive #bytemuck #enums #xxx #default-impl #hash #partial-eq #macro-attributes
  83. brotopuf

    (de)serializing structs in protocol buffer wire format

    v0.1.1 #protobuf #wire-format #int32 #int64 #enums #serialization
  84. aargvark

    Self-similar argument parsing

    v0.9.5 1.2K #arguments-parser #command-line-arguments #enums #shell-completion #struct #command-line-output #self-similar
  85. terra-items-xbox360

    enum contatining xbox 360 terraria items and prefixes

    v0.1.3 #prefix #item #terraria #xbox #enums #360
  86. enumorph

    Derive macro to generate TryFrom and From implementations for converting between newtype enum variants and their wrapped values

    v0.1.3 420 #macro-derive #enums #newtype #convert #try-from
  87. axum-routes

    Create an axum Router from an enum and resolve routes

    v0.2.3 280 #axum-router #enums #resolve #routes
  88. enumscribe

    Derive macros for converting between enums and strings

    v0.4.0 750 #serde-derive #enums-string #enums
  89. enum-toggles

    A generic Rust library for managing toggles/flags using enums and bitvec

    v1.2.1 #features #enums #bit-vec #toggle #flags
  90. specmc-protocol

    parsing Minecraft protocol specification

    v0.1.10 500 #protocol-parser #64-bit #specification #minecraft #enums #32-bit #floating-point
  91. delegation

    Macro-based delegation for enums and structs

    v0.4.0 #enums #optimization #dispatch #delegate
  92. jdt_maybe_reference

    MaybeReference is a utility crate that establishes an enum to use where a value may either be a single JSON string or a JSON object

    v0.1.13 #json #reference #maybe-reference #enums #establishes #uuid
  93. frozone

    Freeze structs and enums in time

    v0.1.0 #struct #freeze #enums #recursion #freezable #deserialize #tree-structure #serialization #backward-compatibility #version-string
  94. store_by_enum

    Type-safe data stores addressed and accessed using enums (in any order)

    v0.1.0 #enums #store #macro #indexing #data-store
  95. enumoid

    Enum Indexed Containers

    v0.4.0 #enums #vector #flags #map
  96. atomic_enum

    An attribute to create an atomic wrapper around a C-style enum

    v0.3.0 123K #atomic #enums
  97. ffi-enum

    Simply write and use enums like rust native enums, freely passing through ffi

    v0.1.5 #enums #c-abi #derive-enums #ffi #derive
  98. enum-ptr

    Ergonomic tagged pointer

    v0.2.0 900 #tagged-pointers #tagged #enums #pointers
  99. indexed_valued_enums

    Create enums resolving into values, and get their variants back through their values, their discriminant or their name; inspired by Java

    v2.0.0 #enums #discriminant #enums-discriminant #valued #no-alloc
  100. reqwest-enum

    Typed enum HTTP API for reqwest

    v0.4.0 550 #web-api #enums #json-rpc
  101. error-enum

    Provide a easy way to define an enum that represents errors with error codes, document comments and several other functionalities

    v1.0.0-alpha.4 #error-derive #enums #tree #derive-enums
  102. jdt_maybe_multiple

    MaybeMultiple is a utility crate that establishes an enum to use in place of Option where the content may be singular, multiple, or None

    v0.1.7 #enums #content #maybe-multiple #place-of-option #establishes #uuid
  103. bitsong

    Fast #[no_std] macro-based serialization/deserialization

    v0.1.3 #serialization #macro-based #deserialize #struct #enums #enums-discriminant #no-std #no-panic
  104. enum-derive-2018

    macros for deriving additional functionality for enums

    v3.0.2 290 #macro-derive #derive-enums #enums #macro-attr #custom-derive
  105. json-result

    A generic enum representing a JSON result that can either be a success (Ok) with a value of type T or an error (Err) with a value of type E

    v0.1.1 400 #serde-json #deserialize #success #enums #generic #deserialize-json #untagged
  106. enum_default_generator

    Codegen tool to generate Default trait impls for Gateway API enums

    v0.19.0 #enums #default-impl #api-gateway #codegen #traits
  107. assert_enum_variants

    macro that asserts that all variants of an enum are as provided in the macro invocation

    v0.1.2 2.5K #enum-variants #enums #assert
  108. deltoid

    calculate and apply deltas to structs and enums

    v0.12.0 #calculate-delta #struct #deserialize #sequence #enums #delta-compression #deeply-nested #bandwidth #receiving #ram
  109. window-getter

    retrieving information about the windows

    v0.1.2 #enums #window #macos #window-enum #windows
  110. enum_discriminant

    Procedural macro to add functions on enum types to get discrimnant value from variant or create unit variant from discriminant value

    v1.0.1 550 #proc-macro #discriminant #ordinal #enums-discriminant #enums
  111. diesel-enums

    Seamless mapping between rust enums and custom postgres types or regular lookup tables, with automatically generated consistency checks

    v0.1.0 #sqlite #postgresql #lookup-tables #enums #generated #database #diesel #database-table #table-id #serialization
  112. int-to-c-enum

    TryFromInt - A convenient derive macro for converting an integer to an enum

    v0.1.0 380 #macro-derive #enums #integer #convert #macro-for-converting
  113. soppo-lsp

    Language server for Soppo

    v0.6.0 #language-server #soppo #enums #interpolation #diagnostics #nil #lsp #pattern-matching #named-arguments
  114. quick-error

    A macro which makes error types pleasant to write

    v2.0.1 10.0M #macro-error #enums #macro #type
  115. inttype-enum

    Converts an [enum] into an [inttype], and try to convert it back

    v0.2.2 500 #enums #convert #inttype #back #try
  116. jkcenum

    Rust enum library

    v0.3.3 390 #enums #jenum
  117. loose_enum

    A macro for defining loose repr enums

    v0.1.0 #representation #enums #loose #no-alloc #repr
  118. unwrap-enum

    generate methods to access enum variants

    v0.1.2 #enums #quote #macro
  119. http-derive

    Derive macro for implementing Into<http::StatusCode> for your enums using the standard http types

    v0.1.2 170 #http-status #macro-derive #status-code #enums #standard #error-handling #http-errors
  120. checked-rs

    encoding validation semantics into the type system

    v1.0.0 800 #type-system #validation #clamp #enums
  121. bool-enum

    A macro for generating boolean-like enums that support bitwise and boolean operations

    v0.1.1 #enums #boolean #no-std
  122. portable_atomic_enum

    An attribute to create an portable atomic wrapper around a C-style enum

    v0.3.1 24K #portable-atomic #atomic #enums
  123. thisenum

    Assign constant literals to enum arms

    v0.2.2 #enums #parser #macro-parser #macro #const
  124. axum-server-maybetlsacceptor

    axum-server-compatible enum that lets you easily accepts connections with or without TLS

    v0.8.0 #axum-server #tls-acceptor #tls-connection #enums #server-connection
  125. repr-discriminant

    Trait to retrieve the discriminant of an enum variant with a repr(T) at runtime

    v3.0.1 #enums-discriminant #discriminant #attributes #enums #repr
  126. enum-variants-strings

    Derive macro for converting instances of enums to and from strs using variant names

    v0.3.0 7.5K #enums-string #enum-variants #enums #derive-enums
  127. enumizer

    macros for generating enums that are equivalent and convertible to standard library enums

    v0.1.2 #enums #result #either
  128. enum_reflect_extern

    Traits for enum_reflect

    v0.2.6 250 #reflection #enums #derive-enums #field #rust
  129. either-both

    An enum similar to the well-known Either, but with a Both variant

    v1.0.0 #no-std #enums #iterator
  130. beerec-variants

    Procedural derive macro to generate boilerplate on unit variants enum types

    v0.5.0 360 #string-representation #macro-derive #rust #boilerplate #enums
  131. clap_fmt

    Serialize a clap arg parser into the command-line arguments

    v0.1.1 #arguments-parser #serialization #struct #back #enums
  132. enum-values

    Exposes enum values via reflection

    v0.1.0 #reflection #enums #reflect
  133. enum_meta

    Add metadata to Enum Variants

    v0.7.0 1.0K #metadata #enums #language
  134. enum_convert

    procedural macro library for deriving automatic conversions between enum variants

    v0.2.0 #macro-derive #enum-variant #enums #convert #derive-enums #macro-variant
  135. tisel

    Effective type-based pseudodynamic dispatch to impls, enums and typeid

    v0.1.1 #type-id #enums #specialization #no-alloc #dyn
  136. msnp11-sdk

    An MSNP11 client SDK

    v0.11.0 #sdk #client #msnp11 #events #enums
  137. enum-field

    Declarative macros for enum-based heterogeneous field accessors

    v0.2.0 #enums #field #declarative-macro #accessor #heterogeneous
  138. rotalubat

    A derive macro for cycling through enum variants

    v1.0.3 #macro-derive #enum-variants #enums #cycling #wrap #clamp
  139. uuid-enum

    UUID-based enums

    v0.1.0 #enums #uuid #uuid-based
  140. methods-enum

    Two macros for easy implementation of 'state' design pattern and other dynamic polymorphism using enum instead of dyn Trait

    v0.3.2 #methods #dyn #enums #polymorphism #state
  141. hirust-gen

    gen

    v0.1.6 340 #gen #enums
  142. itern

    enum types for choosing between N different Iterator types in a single type

    v0.1.1 #iterator #choosing #between-different #enums #single
  143. pkenum

    PKaiser's enum utilities

    v0.3.1 230 #proc-macro #string #enums-string #string-macro #enums
  144. enum_is

    Enum helper derive: auto-generate is_<variant>() methods for enums

    v0.2.1 #enums #derive-enums #auto-generate #methods #helper #proc-macro
  145. variants-struct

    A derive macro to convert enums into a struct where the variants are members

    v0.2.0 330 #enums #struct #map-struct #map
  146. quickvariant

    C++-style variant library

    v0.1.3 120 #enum-variants #macro #enums
  147. csvenum

    Generate code for enums with associated constants from a .csv in your command line

    v0.1.4 250 #associated-constants #csv #codegen #enums #cli
  148. rs-imgextint2mimenum

    Converts the ext to the mime type enum

    v0.1.0 #mime #enums #image #extension #wasm
  149. ctrlgen

    Generate enums for message-passing services

    v0.3.5 410 #service #enums #message-passing #generate #i32 #returnval
  150. intuple

    Convert structs and enums into tuples (of refs) and back - recursive, ignore fields

    v0.2.0 #tuple #enums #tuple-struct #struct #into
  151. c-enum

    A macro to generate c-like enums

    v0.2.3 2.2K #enums #no-alloc
  152. meta-enum

    Meta Information on C-Style Enum Inspired by QMetaEnum

    v0.2.1 #meta-information #c-style #enums #q-meta-enum
  153. mabe

    framework for creating debug-friendly error enums in Rust

    v1.5.0 #debugging #enums #framework #simple #error
  154. enum-bitmasks

    A no_std compatible bitmask macro that can be implemented on enums

    v0.1.0 #enums #macro #no-std #bitmasks
  155. peapod

    Ultra-compact storage for enums

    v0.1.9 #enums #space-efficient #data-structures #compact
  156. trait-enumizer

    Proc macro to automatically generate enum based on method signatures (with appropriate helpers)

    v0.1.1 #traits #enumizer #derive #enums #traits-derive
  157. enum-fun

    Silly enum helpers

    v0.1.6 280 #enums #helper #silly
  158. enum-group-macros

    Define grouped enums with ergonomic pattern matching

    v0.1.0 #pattern-matching #group #macro #enums
  159. table_enum

    A convenient rust macro to create enums with associated constant data (note: this is different from normal rust enums which are really tagged unions)

    v0.3.0 250 #constant #enums #table
  160. enum_cycling

    Small macro for working with enums

    v0.2.1 #enums #pro-macro #macro
  161. cxx-enumext

    Generate cxx compatable Trivial bindings for rust enum types

    v0.0.3 #enums #cpp #ffi
  162. azalia-remi

    🐻‍❄️🪚 Allows to create a union enum for each official Remi crate

    v0.1.12 #azalia #bear #enums #configuring #remi #storage-service
  163. craftflow-nbt

    A serde-based NBT (from Minecraft) binary format implementation

    v2.1.0 550 #minecraft-nbt #serialization #binary-format #enums #byte-array #long-array #serde-based #compound
  164. enum-fields

    Quickly access shared enum fields in Rust

    v0.2.0 #proc-macro #enums #macro
  165. variantly

    Derive helper methods for enum variants that are familiar from std::option::Option & std::result::Result such as unwrap_or or and_then

    v0.4.0 21K #enum-variant #enums #methods #familiar #and-then #rgb #unwrap-or #hsv
  166. any-range

    AnyRange<T> enum can hold any Range*<T> type

    v0.1.4 #range #enums #any
  167. iso639-1

    enum and utils

    v0.4.1 430 #enums #iso-639 #localization
  168. quick-error2

    A macro which makes error types pleasant to write

    v2.1.0 #error-handling #error-macro #enums #macro #type
  169. complex-enum-macros

    Convert enums with non-unit variants to privitives and back

    v0.2.3 260 #proc-macro #enums #macro
  170. bit-flags

    Flags trait that makes custom bitflag enums easier to implement in Rust

    v0.1.2 #enums #no-std
  171. symbols

    Proc-macro utility to populate enums from database data

    v1.0.0 600 #database #enums
  172. enum-visitor

    A small helper to generate visit-like match for enums, inspired by C++ std::visit

    v0.1.0 #enums #pattern-matching #visit
  173. every_variant

    EveryVariant trait that provides the every_variant method on types. Allows you to easily generate every combination of variants in structures that contains Enums, or in nested enum trees…

    v0.4.5 #enum-variants #debugging #enums #string #traits #every-combination
  174. belnapian

    Belnap's 4-valued logic basic building blocks in Rust

    v0.2.0 #building-block #truth #value #logic #enums #proposition #logics
  175. vnum

    Create enums with a constant value associated to every variant

    v0.1.0 #constant-value #enums #macro #utility
  176. actix-web-utils

    Just some useful addons for actix web

    v0.2.20 100 #actix-web #enums #macro #plugin #controller #database
  177. enser

    Enum serialization with tag

    v0.1.4 260 #enums #tags #serde
  178. diesel-enum-sqltype

    derive macro for FromSql and ToSql traits for postgres enums

    v0.1.7 450 #enums #diesel #postgresql
  179. enumx

    Ad-hoc enum extension

    v0.4.3 #ad-hoc #enums #anonymous #structural #sum
  180. gull

    type generation

    v6.0.2 550 #enums #indentation #generation
  181. erm

    A five-way enum to express uncertainty

    v0.1.1 #enums #options #maybe #randomised-algo
  182. big_enum_set

    creating sets of enums with a large number of variants

    v0.3.0 180 #enum-set #enums #bitset
  183. flexpiler

    Deserialiser aiming at high customizability

    v0.2.1 #deserialize #format #deserializer #serialization #enums #on-the-fly #customizability #file-reader #deserialized
  184. bson_comp

    A derive macro that implements Into<bson::Bson> for a struct or enum

    v0.1.0 #bson #macro #enums #struct #documentation
  185. derive-termination

    Derive the std::process::Termination trait for an enum (annotate the variants with #[exit_code(n))

    v1.0.5 #process-termination #exit-code #enum-variants #enums #macro-derive
  186. enum_variant_accessors

    derive macros to generate is_*, as_* and as_*_mut accessors for enum variants

    v1.0.1 #macro-derive #enums #derive-enums #utility #macro-utility #accessors
  187. iter-n

    functions returning impl Iterator to return one of several distinct types

    v0.1.0 #iterator #impl #enums #either
  188. enum_reflect

    Enums reflection library

    v0.2.6 480 #reflection #enums #derive #rust #field
  189. uniasset

    Unity ScriptableObject manipulation in Rust

    v0.8.1 #assets #unity #scriptable #object #enums #load-assets
  190. anon_iter

    Return different Iterator types from function returning -> impl Iterator

    v0.1.0 #iterator #impl #enums
  191. treeerror

    macros for generating trees of enums, as well as From implementations converting between them. Primarily intended for error handling.

    v0.1.1 #partial-eq #enums #generator #convert #tree #proc-macro #tree-generator #static-string #debugging
  192. phenotype-internal

    Defines Phenotype trait for Peapod crate

    v0.2.0 #peapod #enums #traits #storage-collection #data-structures #ultra-compact #memory-data-structure
  193. enum-unitary

    Trait and macro for unitary enums

    v0.5.0 #enums #macro-traits #unitary #macro-derive #enum-variant #primitive-numbers
  194. stateless

    A lightweight, zero-cost state machine library that separates structure from behavior. Guards and actions live in wrapper code, not the DSL

    v0.1.0 500 #state-machine #enums #macro
  195. enum_builder

    macros that allow building enum types from variants that can be defined in multiple dispersed files in the crate

    v0.1.6 #enums #enum-variant #building #macro #animal #dog #fish #enum-dispatch
  196. enum_macros

    A collection of useful macros to make working with enums easier

    v0.0.4 190 #proc-macro #enums #macro
  197. random_variant

    To be used with all variant, contains the derive macro

    v0.2.7 450 #macro-derive #testing #enums #limit #error-code #random-testing #every-variant #hunting
  198. bitmask

    generator for enum scoped bit flags

    v0.5.0 21K #bit-flags #generator #enums #scoped #mask
  199. match-commutative

    Match on patterns commutatively, reducing the use of duplicated patterns. ↔️

    v0.1.0 #match-enums #match-variant #pattern-match #enums #macro #no-alloc
  200. enum_delegate

    Easily replace dynamic dispatch with an enum, for speed and serialization

    v0.2.0 32K #enums #performance-optimization #traits #macro #performance
  201. enum_from_derive

    Implement From For the Enumeration

    v0.1.6 800 #enums #derive #testing #debugging #repr #from-str #ttt
  202. enum-kinds

    Generate enums with matching variants but without any of the associated data

    v0.5.1 26K #proc-macro #macro-derive #deriving #enums
  203. tagged_delegate

    Builds a delegate macro on enums where each variant contains a value that implements the same trait

    v0.2.0 #enums #traits #delegates #macro #enum-variants #struct-fields
  204. symbols-models

    Proc-macro utility to populate enums from database data (shared traits)

    v1.0.0 700 #database #enums
  205. variant_counter

    Rust's Enum variant counter

    v0.4.0 #enum-variants #enums #variant-count #erase #statistics
  206. bitbag

    A useful struct for dealing with bit flags

    v0.3.0 400 #bit-flags #enums #repr #defined #derive
  207. enum-ref

    Proc. macro for generating enum discriminant types.

    v0.1.0 #enums #reference #wrapper
  208. frunk-enum-derive

    Derive macros to implement the frunk::LabelledGeneric trait on enums

    v0.3.0 4.0K #frunk #macro-derive #labelled-generic #enums #derive-enums
  209. static-dispatch

    Implement a trait for an enum, where all variants implement the trait

    v0.2.0 #enums #enum-variants #traits #static #dispatch #macro-rules
  210. diesel-enum-case

    Interop between your enums and your database with diesel, with customizable case conversion for string enums

    v0.3.0 #enums #case-conversion #diesel #database
  211. tri_ton

    A Macro for Handling Exceptions

    v0.0.2 #enums #macro #utility #macro-utility
  212. enumrs

    A derive for adding arbitrary values to enums

    v0.2.1 #derive #enums #derive-enums #associate
  213. lachs

    automatically creating a lexer based on a given enum

    v0.1.4 #lexer #enums #lexer-generator #automatic #regex #proc-macro
  214. enum-primitive-derive

    enum_primitive implementation using procedural macros to have a custom derive

    v0.3.0 408K #from-primitive #ffi #primitive #derive-enums #enums
  215. abienum

    underlying types for C enums

    v0.0.0-2025-01-19 #enums #abi
  216. maybe-uninit

    MaybeUninit for friends of backwards compatibility

    v2.0.0 471K #maybe-uninit-of-backward #compatibility #maybe-uninit-for-friends #enums #bool #re-exports #feature-complete
  217. enum_properties

    A macro for declaring static properties on enum variants

    v0.3.0 #enums #macro #static
  218. this-error-from-box

    Generates From impls for boxed thiserror enum variants

    v0.2.1 110 #error-handling #enum-variants #boxed #enums #generator
  219. simplerror

    A zero-dep macro to declaratively define error enum types and their common trait implementations

    v1.1.0 #macro-derive #enums #error-macro #declare #error
  220. prost-enum

    Enhance Enums of prost generated files to support serde and sea-orm

    v0.1.1 280 #enums #protobuf #sea-orm #enhance #serde #prost-generated
  221. Try searching with DuckDuckGo.

  222. enum_handler

    A macro to generate a handler trait for enums variants

    v0.1.0 #enums #handler #state #bloc
  223. impl_index

    Macro for deriving the Index trait

    v1.0.1 #index-mut #enums #macro-traits #deriving #pat
  224. serde_literals

    Support for serialising and deserialising literals directly into enum unit variants

    v0.1.2 #literals #enums #serde
  225. utoipa_repr

    Derive utoipa::ToSchema that uses underlying integer representation of enum for schema generation

    v0.1.0 #utoipa #schema-generation #integer #enums #integer-representation
  226. encap_enum

    A non-verbose way to define a group of constants and bit flags

    v0.3.1 #bit-flags #bitmask #enums
  227. plain_enum

    Mimicing Java's enum::values() and EnumMap

    v0.12.0 130 #enums #enum-map #value #java #associated #trailing-comma
  228. inst_derive

    Derive macro for tagged union enums implementing the Instantiable trait in safety-net

    v0.1.2 #macro-derive #instantiable #safety-net #enums #constant #gate #debugging
  229. type_enum

    Create tagged unions consisting of different types

    v0.1.6 #tagged-unions #enums #consisting-of-different #traits #union
  230. embedded_commands_rs

    Lightweight, embeddable command interpreter for Rust

    v0.1.7 180 #command-interpreter #token #string #embeddable #enums #mutable-reference
  231. class-enums

    that stores enum variants with their own structs with an optional base struct

    v0.1.0 #enums #enum-variants
  232. discrimin-ant

    A tiny crate to make working with discriminants easier

    v0.1.1 #enums-discriminant #serialization #marshalling #enums #no-alloc
  233. enum-repr

    Derive enum repr conversions compatible with type aliases

    v0.2.6 4.7K #enums #discriminant #repr #enums-discriminant #constant
  234. enum_parity

    a macro that enforces enum discriminant bit parity

    v0.2.0 #bit-parity #enums-discriminant #discriminant #parity #enums
  235. derive-name

    Derive macro to get the name of a struct, enum or enum variant

    v1.1.0 950 #struct-name #macro-derive #enums #enum-variants #enum-variant
  236. custom_attrs

    that allows you to configure values specific to each variants of an enum

    v1.6.2 #attr #enum-variants #enums #derive-enums #declaration #reference-field #produce-error #notes
  237. litenum

    minimal convertion utilities between literal and enum

    v1.1.1 260 #proc-macro #convert #no-alloc #enums
  238. rsmack-seanum

    Enhanced documentation macro with constant evaluation

    v0.18.0 #enums #seanum #documentation #rsmack #database #sea-orm #entity-system
  239. enum_variant_type

    Generates types for each enum variant and conversion trait impls

    v0.3.1 1.2K #enum-variant #type #enums
  240. temporary_enum_delegate_0_3_0

    trait delegation functionality for enums and structs

    v0.3.0 #delegation #struct #enums #convert #traits #as-str
  241. flat_enum

    Expand nested enum into flattened enum

    v0.1.1 #macro #enums
  242. vec-of-enum

    Helper macros for a Vec of enum values

    v0.1.1 #enums #macro #vec #helper #value