#enums


  1. strum

    macros for working with enums and strings

    v0.28.0 42.7M #proc-macro #enums-string #string #enums #string-macro

  2. num_enum

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

    v0.7.6 16.3M #convert #ffi #enums #safe #safe-ffi

  3. synstructure

    Helper methods and macros for custom derives

    v0.13.2 49.0M #enums #macro-derive #syn #expand-substructure

  4. enumflags2

    Enum-based bit flags

    v0.7.12 9.1M #bit-flags #enums #bitflags

  5. enum-map

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

    v3.0.0-beta.2 2.9M #enums #no-std

  6. enumset

    creating compact sets of enums

    v1.1.13 2.6M #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 2.7M #iterator #cardinality #enums #enumerate

  8. spirv

    Rust definition of SPIR-V structs and enums

    v0.4.0+sdk-1.4.341.0 2.7M #enums #struct

  9. flagset

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

    v0.4.7 3.9M #enums #flags #bitflags

  10. 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.4.1 7.4M #ordinalize #ordinal #numbers #enums

  11. derive_utils

    A procedural macro helper for easily writing derive macros for enums

    v0.16.0 2.0M #proc-macro #macro-derive #macro-helpers #enums

  12. auto_enums

    allow multiple return types by automatically generated enum

    v0.8.10 1.7M #macro-derive #enums #no-alloc

  13. kinded

    Generate enums with same variants, but without data

    v0.5.0 567K #macro-derive #enums #kinds

  14. serde_variant

    Retrieve serde provided variant names for enum objects

    v0.1.3 291K #enum-variant #serialization #enums #serde

  15. ipld-core

    IPLD core types

    v0.4.3 42K #deserialize #interoperating #enums #codec #core-types #arb #serialization

  16. caret

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

    v0.10.0 72K #enums #macro

  17. bitflagset

    Enum and positional typed bitsets with Set API

    v0.0.3 15K #bit-set #bit-vec #bit-flags #enums #api #atomic-u64 #set-operations #repr-transparent #positional #bit-operator

  18. envious

    Deserialize (potentially nested) environment variables into your custom structs

    v0.3.0 20K #deserialize #env-vars #struct #enums #case-sensitive #separator

  19. aws-sdk-mediaconvert

    AWS SDK for AWS Elemental MediaConvert

    v1.133.0 3.0K #variant #enums #aws-sdk

  20. derive-new

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

    v0.7.0 1.9M #struct #constructor #derive #enums #default

  21. parse-variants

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

    v1.0.8 19K #enums #speculative #either

  22. as_variant

    macro to convert enums with newtype variants to Options

    v1.3.0 88K #macro #enum-variants #enums

  23. sage-checker

    Name resolution and type checker for the Sage language

    v2.1.0 #sage #type-checker #agent #record #enums #sg #first-class #citizens #researcher #supervision

  24. ordinal-map

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

    v0.1.11 118K #map-set #ordinal #integer #enums

  25. enum-table

    creating tables with enums as key

    v3.0.1 2.0K #hash-map #enums

  26. thiserror-no-std

    derive(Error)

    v2.0.2 270K #error-handling #enums #struct #no-std #my-error #struct-fields

  27. spire_enum

    Procedural macros to facilitate enum usage, such as when delegating implementations, extracting variant types, or creating enum tables

    v1.1.1 7.8K #enum-variant #traits #enums #macro-traits #no-alloc

  28. result-like

    Option/Result-like monad interface for your own enum

    v0.5.1 47K #enums #monads #macro #options #result

  29. aws-sdk-medialive

    AWS SDK for AWS Elemental MediaLive

    v1.141.0 #variant #enums #aws-sdk

  30. enum-assoc

    Procedural macro to associate constants with enum variants

    v1.3.0 255K #proc-macro #constant #enums

  31. try_match

    Fallible pattern matching with a function-like syntax

    v0.4.2 78K #match-enums #enums #macro #macro-variant #pattern-match

  32. packed_struct

    Binary-level structure packing and unpacking generator

    v0.10.1 782K #enums #packing #serialization

  33. argyle

    A lightweight, agnostic CLI argument parser

    v0.15.0 40K #arguments-parser #enums #macro #generating #deps #argue #cli-arguments #stderr

  34. enum-display

    A macro to derive Display for enums

    v0.2.1 171K #enums #macro-derive #display

  35. linearize

    Types that are enumerable and an array-backed map

    v0.1.7 9.4K #enums #no-std

  36. dtype_dispatch

    Macro builder for working with data types

    v0.2.1 186K #dtype #enums #generic #dispatch

  37. rbx_reflection

    Roblox reflection database and ambiguous type resolution

    v7.0.0 14K #roblox #reflection #properties #enums #database #serialization

  38. subenum

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

    v1.2.0 215K #proc-macro #no-std #enums

  39. vst3

    Rust bindings for the VST 3 API

    v0.3.0 7.1K #vst-bindings #object #namespaces #enums #minor #guid #iid #struct-definition

  40. iter-enum

    #[derive(Iterator, DoubleEndedIterator, ExactSizeIterator, Extend)] for enums

    v1.2.1 42K #derive #enums #iterator #derive-enums #no-alloc

  41. 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 103K #enums #newtype #integer #open

  42. tinkoff-invest

    tinkoff invest library

    v2.34.0 #invest #tinkoff #order-book #figi #enums #candlestick #cache #portfolio

  43. strum_macros

    macros for working with enums and strings

    v0.28.0 44.0M #enums-string #proc-macro #string #string-macro #enums

  44. among

    A general purpose sum type with three cases: the enum Among with variants Left, Middle and Right. A three-way counterpart to Either, with no_std, serde, futures and tokio integrations.

    v0.2.0 4.8K #sum-types #enums #no-std #either

  45. repack

    Powerful model codegen

    v0.99.0 800 #blueprint #codegen #enums #schema-definition #struct-fields #template-engine #typescript #target-language #data-model #inheritance

  46. boolean-enums

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

    v0.4.1 11K #enums #boolean #yes #bool #no

  47. serde-implicit

    the serde(untagged) you wish you had

    v0.3.1 2.4K #enums #untagged #tagged #content #deserialize #serde #serde-derive #error-message

  48. int-enum

    A derive macro for conversion between integer and enum types

    v1.2.0 259K #macro-derive #enums #convert #integer-and-enum #repr #ascii #partial-eq #try-from

  49. finance_enums

    Standard financial enumerations

    v0.6.0 #finance #enums #standard #trading #currency #country-code #abi #security

  50. gratte

    macros for working with enums and strings; forked from strum

    v2.0.0 600 #proc-macro #enums-string #string #enums #string-macro

  51. sumtype

    Generate zerocost anonymous sum types that implement common traits

    v0.4.0 #zero-cost #iterator #enums #union-types #macro

  52. 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.0K #pattern-matching #enum-variant #type-safety #enums

  53. bitflag-attr

    A macro to generate bitflags structures from C-like enums

    v0.13.0 #bit-flags #bitmask #enums #bitflags

  54. peel-off

    Peel off a specific variant from a Rust enum, splitting it into the extracted variant and the residual

    v0.1.1 52K #enum-variants #error-handling #pattern-matching #enums

  55. mathscape-core

    Point, Number, Fn, Term enum, hash-consing, evaluation

    v0.1.1 #enums #s-expr #abstraction #numbers #substitution #hash-consing #discovers #compression #novelty #expression-tree

  56. wasm-wave

    WebAssembly Value Encoding

    v0.252.0 126K #encoding #record #enums #arguments #wave #component-model #wasm #nan #multi-line #wit

  57. is-macro

    Derive methods for using custom enums like Option / Result

    v0.3.7 2.8M #enums #generics #information

  58. from_variants

    Rust macro to automatically generate conversions for newtype enums

    v1.0.2 109K #enum-variants #enums #convert #newtype #automatic

  59. benzina

    Various helper types and macros for diesel

    v0.5.2 850 #diesel #json #macro #postgresql #enums

  60. ptr-union

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

    v2.3.0 1.8K #pointers #enums #thin-pointers #union

  61. enum-collections

    EnumMap implemented in safe rust

    v2.0.0 300 #hash-map #enum-map #collection #enums

  62. quick-error

    A macro which makes error types pleasant to write

    v2.0.1 23.3M #macro-error #enums #macro #type

  63. loft

    embedded scripting language

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

  64. io-enum

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

    v1.2.1 211K #bufread #derive #enums #derive-enums #io

  65. hailort-sys

    Raw FFI bindings to the HailoRT C runtime library

    v0.1.1 #run-time #opaque-handle #raspberry-pi #enums #bindings #notifications #artificial-intelligence #hat #type-aliases #error-code

  66. enum_variant_type

    Generates types for each enum variant and conversion trait impls

    v0.4.0 15K #enum-variant #type #enums

  67. enum2schema

    derive macro that emits a JSON Schema describing a rust type, including doc-comment descriptions, externally tagged enum variants, and field types

    v0.1.2 160 #json-schema #enums #macro

  68. serde_dms

    Serde Deserializer for DMS

    v0.5.4 #dms #deserializer #deserialize #optional-fields #enums #serde-json #realistic

  69. dang-yang

    A practical yang parser that allows custom type extension and definitions at build time

    v0.0.3 #codegen #typedef #yang #define #enums #source-file #ip-address #type-registry #data-modeling

  70. typewriter-plugin-dart

    Dart/Flutter emitter plugin for typewriter

    v1.0.0 #emitter #typewriter #typescript #enums #flutter #dart #full-stack #pydantic #hash-map #auto-generated

  71. typewriter-plugin-ruby

    Ruby (Sorbet) emitter plugin for typewriter

    v1.0.0 #emitter #typewriter #ruby #typescript #enums #sorbet #full-stack #pydantic #auto-generated #hash-map

  72. typewriter-plugin-php

    PHP emitter plugin for typewriter

    v1.0.0 #php #emitter #typewriter #typescript #enums #full-stack #pydantic #auto-generated #serde #uuid

  73. ansi-parser

    using nom for parsing ANSI Escape Codes

    v0.9.1 19K #ansi-escapes #sequence #iterator #nom #enums

  74. litty

    Literally adds literals to Rust

    v0.3.0 #literals #serialization #enums #serde #struct-fields

  75. nutype-enum

    Helper macro to create a nutype that behaves like an enum

    v0.1.5 31K #enums #nutype

  76. wireforge-packet

    Unified packet enum and protocol dispatch logic

    v1.1.0 #raw-sockets #packet-parser #zero-copy-parser #enums #protocols #cross-platform #libpnet #network-packet #l4 #layer-protocols

  77. variant_count

    Derive macro that adds a variant count to an enum

    v1.2.1 260K #enums #count

  78. struct-to-enum

    Derive macros to generate enums from struct fields - compile-time safe field selection and dispatch

    v1.1.2 #macro-derive #struct-fields #enums

  79. binmarshal

    Pack and unpack structs and enums into and out of binary data streams

    v1.1.7 2.0K #data-stream #pack-unpack #binary-data #struct #enums

  80. VersaLogrs

    Versatile logging library

    v2.0.0 #versalogrs #logging #versa-log #save #versatile #enums #meet

  81. 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

  82. terra-items

    enum contatining terraria items and prefixes

    v0.4.0 #prefix #item #terraria #enums

  83. frunk-enum-core

    Implemenation of genericized enums for use with frunk

    v0.3.0 10K #frunk #enums #transmogrification #representation #github #implemenation #auto-generate

  84. country-code-enum

    Copyable Serde and Sqlx compatible country codes

    v1.0.0 #country-code #serde #enums #copyable #sqlx

  85. serde_content_ref

    Serde deserializer for reference content

    v0.1.0 4.3K #deserialize #content #reference #deserializer #enums

  86. enumeration

    An extension to rust enum

    v3.3.2 1.0K #enums

  87. looking-glass

    reflection & type-erasure library for Rust

    v0.1.4 15K #instance #protobuf #enums #typed #type-erasure

  88. extrum

    A macro for defining enum-like types with a specified underlying integer type

    v0.1.3 #repr-transparent #enums #macro #conversion

  89. hodgepodge

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

    v0.2.0 #dataset #enums #prototype #teaching #education

  90. pattern-wishcast

    Pattern types emulation for conditional variants using conditional never types

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

  91. clap-binary-enum

    A generic wrapper for using two-variant enums as optional clap CLI flags

    v0.1.2 #enums #clap #arg #cli-flags #flags

  92. steam-enums

    Steam protocol enumerations (EResult, EMsg, EAccountType, etc.) for Rust

    v0.1.2 250 #steam #enums #api-bindings

  93. serde_literals

    Support for serialising and deserialising literals directly into enum unit variants

    v0.1.3 #literals #enums #serde

  94. enumscribe

    Derive macros for converting between enums and strings

    v0.4.0 1.6K #serde-derive #enums-string #enums #serde

  95. sigma-enum

    A macro to simulate sigma types with enums

    v0.1.2 #enums #derive #dependent-types

  96. aargvark

    Self-similar argument parsing

    v0.12.0 1.3K #arguments-parser #command-line-arguments #shell-completion #enums #command-line-output #self-similar

  97. babel

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

    v0.0.11 #llm-model #enums #groq #openrouter #response

  98. enum-derived

    Generate random instances of your enums and structs

    v0.9.2 6.4K #random #enums #struct #derive

  99. 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 #value #enums #uuid

  100. 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 #match

  101. enum_dict

    Efficient enum-indexed dictionaries

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

  102. 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.10 160 #error-derive #enums #tree #derive-enums #error

  103. axum-routes

    Create an axum Router from an enum and resolve routes

    v0.2.3 280 #axum-router #routes #enums #resolve #linker #trace-layer #tower-http #serde-json

  104. c-enum

    A macro to generate c-like enums

    v0.2.3 58K #enums #no-alloc

  105. pyenum

    Expose Rust enums to Python as real enum.Enum subclasses via PyO3

    v0.0.4 #enums #pyo3 #python #derive #api-bindings

  106. enumoid

    Enum Indexed Containers

    v0.4.0 #enums #flags #map #vector

  107. 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 #content #enums #maybe-multiple #place-of-option #establishes #uuid

  108. static-dispatch

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

    v0.3.0 #enums #enum-variants #traits #static #dispatch #macro-rules

  109. 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 #discriminant #enums #valued #no-alloc

  110. enum-ptr

    Ergonomic tagged pointer

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

  111. 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

  112. penum

    Make enum conform to a given pattern

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

  113. enumcapsulate

    Safe casting for newtype enums and their variants

    v0.6.3 #newtype #cast #enums #encapsulation

  114. enumorph

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

    v0.1.3 310 #macro-derive #newtype #enums #convert #try-from

  115. type_reflect

    Extensible runtime reflection through a Derive macro

    v0.6.2 #run-time-reflection #typescript #macro-derive #enums #zod #cargo-subcommand

  116. delegation

    Macro-based delegation for enums and structs

    v0.4.0 #enums #optimization #dispatch #delegate

  117. wyre

    wyre serialization and deserialization library

    v0.2.16 #serialization #enums #deserialize #messagepack #accounting #test-struct #ron #house #tidy #plain-text

  118. omcp

    functions

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

  119. colornames

    An enum of color names, with a catchall RGB variant

    v0.0.6 #rgb #enum-variants #enums #name #named-color #white-space

  120. atomic_enum

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

    v0.3.0 236K #enums #atomic

  121. tool-arg-fuzzy

    Fuzzy-match LLM-generated args to JSON Schema enum values. Zero-Levenshtein cascade (exact / case-insensitive / prefix / substring) with ambiguity guard. coerce_enums rewrites enum-constrained…

    v0.1.0 #json-schema #llm #enums #agent #api-bindings

  122. enum-update

    representing state changes as enums

    v0.2.0 #proc-macro #state #enums

  123. ai-quick-error

    A no_std fork of quick-error

    v2.0.1 #enums #macro-error #macro #type

  124. diesel-enums

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

    v0.2.2 #postgresql #mysql #enums #diesel

  125. deltoid

    calculate and apply deltas to structs and enums

    v0.12.0 #calculate-delta #enums #define #struct #tree #delta-compression #deeply-nested #deserialize #bandwidth #receiving

  126. pgenum_parser

    parser for PostgreSQL enum types, intended to allow static analysis of enum definitions in SQL dumps (such as provided by Rails’ structure.sql). It uses pg_query.rs for the analysis…

    v0.2.1 #enums #rails #ruby #postgresql

  127. 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

  128. terra-items-xbox360

    enum contatining xbox 360 terraria items and prefixes

    v0.2.0 #prefix #item #xbox #terraria #enums #360

  129. enum-tag

    Proc. macro for generating enum discriminant types.

    v0.3.0 15K #c-like #tagged #discriminant #enums-discriminant #enums

  130. minecraft-version

    Exhaustive enum of Minecraft versions

    v0.1.1 #minecraft #enums

  131. enum-variants-strings

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

    v0.3.0 8.4K #enums #enums-string #enum-variants #string

  132. baxe

    that simplifies error handling in Axum

    v0.1.6 #axum #error #back-end #enums #error-logging #error-response #json-error #define-error #error-handling #email-validation

  133. tf2-enum

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

    v0.13.0 750 #steam #tf2 #enums

  134. axum-query-list

    QueryList extractor for axum — deserialize Vec<Enum> from query strings with optional cap

    v0.1.1 #deserialize #axum #extractor #enums #axum-extractor

  135. enum_meta

    Add metadata to Enum Variants

    v0.7.0 4.1K #metadata #enums #language

  136. feagi_data_serialization

    Adds serialization and deserialization to select Feagi Data Structures

    v0.0.50-beta.60 #serialization #feagi #feagi-byte-container #deserialize #enums

  137. codama-syn-helpers

    Extension of syn for Codama

    v0.9.3 5.9K #codama #syn #helper #file #enums #proc-macro #korok

  138. tggen

    A mildly competent autogenerated telegram bot api wrapper (helper crate)

    v0.0.82 #telegram-bot #bot-api #botapi #auto-generated #enums #serialization #serde #rate-limiting #webhook #generic-parameters

  139. 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 #data-structure

  140. stateless

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

    v0.5.0 390 #state-machine #enums #macro

  141. portable_atomic_enum

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

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

  142. bitsong

    Fast #[no_std] macro-based serialization/deserialization

    v0.1.3 #serialization #macro-based #deserialize #struct #enums #enums-discriminant #no-std #no-panic

  143. inttype-enum

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

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

  144. atomium

    atomic enums

    v0.1.1 #atomic #enums

  145. str_enum

    declarative macro for an enum with associated strings for each variant

    v0.3.2 #declarative-macro #enums #enums-string #string #macro-string

  146. data-classes

    Abbreviation of #[derive(xxx)]

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

  147. nestum

    Proc-macro for nested enum paths like Enum1::Variant1::VariantA

    v0.3.2 #nested #proc-macro #enums #path #read #validation-error #command-tree #variant1 #nested-error

  148. plectrum

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

    v0.2.0 #lookup-tables #enums

  149. checked-rs

    encoding validation semantics into the type system

    v1.0.0 800 #type-system #validation #clamp #enums

  150. dispatch_map

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

    v0.1.3 110 #deserialize #serde #enums #config #map

  151. tisel

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

    v0.1.1 #type-id #dyn #specialization #enums #dispatch #no-alloc

  152. assert_enum_variants

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

    v0.1.2 7.8K #enum-variants #enums #assert

  153. unwrap-enum

    generate methods to access enum variants

    v0.1.2 #enum-variants #enums #quote #macro

  154. methods-enum

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

    v0.3.2 #polymorphism #methods #dyn #enums #state

  155. enum-helper

    enum helper. Macros that generate common boilerplate for enums.

    v0.3.1 #proc-macro #macro-derive #enums

  156. bevy_filter_enum

    Derive marker components from enum variants for Bevy ECS queries

    v0.4.2 190 #enums #marker #ecs #bevy #bevy-ecs

  157. enum-derive-2018

    macros for deriving additional functionality for enums

    v3.0.2 290 #macro-derive #enums #macro-attr #custom-derive

  158. maybe-valid

    Traits and outcome enums for structural validation/refinement conversions

    v0.1.0 #validation #refinement #enums #string-conversion #traits #canonical #precursor

  159. azalia-remi

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

    v0.1.13 220 #azalia #bear #enums #remi #union

  160. enum-path

    Derive FromStr and Display impls for enums that follow a hierarchical path-like serialization scheme

    v0.1.0 #from-str #enums #derive #path

  161. 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 64K #enum-variant #enums #methods #familiar #and-then #rgb #unwrap-or #hsv

  162. assert-order

    Assert the order of Rust enum variants

    v0.0.3 #order #assert #derive #enums

  163. intuple

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

    v0.2.0 #tuple #enums #struct #tuple-struct #into

  164. derive-termination

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

    v2.0.0 #process-termination #enums #exit-code #enum-variants #traits

  165. bool-enum

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

    v0.1.1 1.0K #enums #boolean #no-std

  166. enumizer

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

    v0.1.2 #enums #result #either

  167. enum_index

    Trait and macros for extracting Enum variant index

    v0.2.0 55K #enums #index #macro

  168. mabe

    framework for creating debug-friendly error enums in Rust

    v1.5.0 #debugging #enums #framework #simple #error

  169. reqwest-enum

    Typed enum HTTP API for reqwest

    v0.4.0 550 #web-api #enums

  170. ctrlgen

    Generate enums for message-passing services

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

  171. permkit-permission-macros

    Derive macro for typed permission enums

    v0.1.0 #permissions #macro-derive #enums #permkit #derive-enums

  172. peapod

    Ultra-compact storage for enums

    v0.1.9 #enums #space-efficient #data-structures #compact #vector

  173. enum_cycling

    Small macro for working with enums

    v0.2.1 270 #enums #pro-macro #macro

  174. enum-tree

    Derives for hierarchical enums: const variant enumeration, From conversions, and ancestor wrapping

    v0.1.0 #enums #tree #derive #from #derive-enums

  175. 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 140 #constant #enums #table

  176. csvenum

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

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

  177. trait-enumizer

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

    v0.1.1 #traits #enumizer #derive #enums #traits-derive

  178. varienum

    Runtime inspection of enum variants

    v0.2.11 #enum-variants #enums #run-time #inspection-of-enum-variant

  179. maybe-uninit

    MaybeUninit for friends of backwards compatibility

    v2.0.0 2.0M #maybe-uninit-of-backward-compatibility #friends #maybe-uninit-for-friends #enums #bool #feature-complete

  180. enum-fun

    Silly enum helpers

    v0.1.6 280 #enums #helper #silly

  181. gull

    type generation

    v6.0.2 1.7K #enums #generation

  182. rotalubat

    A derive macro for cycling through enum variants

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

  183. jkcenum

    Rust enum library

    v0.3.3 390 #enums #jenum

  184. enum-toggles

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

    v1.2.1 #features #bit-vec #enums #flags #toggle

  185. enum-primitive-derive

    enum_primitive implementation using procedural macros to have a custom derive

    v0.3.0 546K #from-primitive #ffi #primitive #derive-enums #enums

  186. extendable-data

    A set of rust macros that allows you to specify data that can be "extended" or inherited from

    v0.1.5 #proc-macro #struct #union #extensible #enums

  187. enum_delegate

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

    v0.2.0 77K #enums #traits #optimization #performance #macro

  188. numeric-enum-macro

    A declarative macro for type-safe enum-to-numbers conversion

    v0.2.0 23K #declarative-macro #enums #macro #no-std

  189. inline_enum_handler

    Match enum variants to #[handler] functions without boilerplate

    v0.1.0 #macro #codegen #enums #actor #no-std

  190. enum_variant_accessors

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

    v1.0.2 #macro-derive #enums #derive-enums #utility #macro-utility #accessors

  191. int-to-c-enum

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

    v0.1.0 230 #macro-derive #enums #integer #convert #macro-for-converting #repr #try-from #proc-macro

  192. quick-error2

    A macro which makes error types pleasant to write

    v2.1.0 #macro-error #enums #macro #type

  193. enum_convert

    procedural macro library for deriving automatic conversions between enum variants

    v0.2.0 1.4K #macro-derive #enum-variant #enums #convert #derive-enums #macro-variant

  194. enser

    Enum serialization with tag

    v0.1.4 490 #enums #tags #serde

  195. symbols

    Proc-macro utility to populate enums from database data

    v1.0.0 600 #database #enums

  196. vnum

    Create enums with a constant value associated to every variant

    v0.1.0 #enum-variants #enums #macro #utility

  197. actix-web-utils

    Just some useful addons for actix web

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

  198. iab-specs-adcom

    AdCOM 1.0 enumerations and common objects for the iab-specs ecosystem

    v0.5.1 #iab #enums #open-rtb #advertising #adcom

  199. enum_default_generator

    Codegen tool to generate Default trait impls for Gateway API enums

    v0.19.0 #default #enums #api-gateway #codegen #traits

  200. frunk-enum-derive

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

    v0.3.0 10K #frunk #labelled-generic #enums #derive-enums #traits #macro-derive

  201. big_enum_set

    creating sets of enums with a large number of variants

    v0.3.0 #enum-set #enums #bitset

  202. 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 330 #enums #generate #testing #string #traits #every-combination #debugging #message-type

  203. flexpiler

    Deserialiser aiming at high customizability

    v0.2.1 #deserialize #struct #deserializer #enums #macro #on-the-fly #customizability #deserialized #file-reader #forms

  204. enum-kinds

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

    v0.5.1 57K #proc-macro #macro-derive #deriving #enums

  205. first-class-variants

    A procedural macro to generate first-class structs for enum variants

    v1.1.0 600 #first-class #enum-variants #enums #struct #proc-macro

  206. derive-name

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

    v1.1.0 4.3K #struct-name #macro-derive #enums #enum-variant

  207. brotopuf

    (de)serializing structs in protocol buffer wire format

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

  208. complex-enum-macros

    Convert enums with non-unit variants to privitives and back

    v0.2.3 260 #proc-macro #enums #macro

  209. iso639-1

    enum and utils

    v0.4.1 #enums #iso-639 #to-iso-639-3

  210. evutils

    Handy helper utilities for working with enum variants

    v0.1.1 200 #enums #enum-variant #handy #json #serde

  211. iter-n

    functions returning impl Iterator to return one of several distinct types

    v0.1.0 #iterator #impl #enums #either

  212. enum_reflect

    Enums reflection library

    v0.2.6 480 #reflection #enums #derive #rust #field #field-derive

  213. ai-personas

    Hard-contract enum definitions for Sovereign AI Personas

    v0.2.1 #personas #sovereign #artificial-intelligence #define #enums

  214. inarybay

    Graph-based binary format (de)serializer generator

    v0.1.1 #binary-encoding #serialization #generator #endian #enums #graph-based #fixed-length #protobuf

  215. treeerror

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

    v0.1.1 #enums #macro #unit #generating #generator #partial-eq #static-string

  216. bitmask

    generator for enum scoped bit flags

    v0.5.0 27K #bit-flags #generator #scoped #enums #mask

  217. phenotype-internal

    Defines Phenotype trait for Peapod crate

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

  218. biosyn

    Mad Science Crate for working with syn

    v0.1.0 #syn #discriminant #mad #split-by-discriminant #enums
  219. Try searching with DuckDuckGo.


  220. match-commutative

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

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

  221. craftflow-nbt

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

    v2.1.0 130 #minecraft-nbt #serialization #binary-format #enums #byte-array #compound #long-array #serde-based

  222. variant_counter

    Rust's Enum variant counter

    v0.4.0 #enums #enum-variant #variant-count #erase #counter #statistics

  223. symbols-models

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

    v1.0.0 700 #database #enums

  224. 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 #proc-macro #discriminant #ordinal #enums-discriminant #enums

  225. hirust-gen

    gen

    v0.1.6 340 #gen #enums

  226. enum-unitary

    Trait and macro for unitary enums

    v0.5.0 #enums #unitary #macro-for-unitary #traits #constraints #primitive-numbers

  227. bitbag

    A useful struct for dealing with bit flags

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

  228. enum-ref

    Proc. macro for generating enum discriminant types.

    v0.1.0 #enums #reference #wrapper

  229. diesel-enum-number

    Attribute macro to allow diesel to use number based enums in postgres

    v0.1.5 #enums #diesel #postgresql #smallint #sql

  230. tri_ton

    A Macro for Handling Exceptions

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

  231. enumx

    Ad-hoc enum extension

    v0.4.3 330 #ad-hoc #enums #anonymous #sum #structural

  232. meta-enum

    Meta Information on C-Style Enum Inspired by QMetaEnum

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

  233. beerec-variants

    Procedural derive macro to generate boilerplate on unit variants enum types

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

  234. 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

  235. thisenum

    Assign constant literals to enum arms

    v0.2.2 550 #parser #enums #macro #macro-parser #const

  236. window-getter

    retrieving information about the windows

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

  237. abienum

    underlying types for C enums

    v0.0.0-2025-01-19 #enums #abi

  238. variants-struct

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

    v0.2.0 #enums #struct #map-struct #map

  239. random_variant

    To be used with all variant, contains the derive macro

    v0.2.7 450 #testing #limit #enums #macro-derive #set #every-variant #hunting #serde #ip-addr #error-code

  240. enum_handler

    A macro to generate a handler trait for enums variants

    v0.1.0 #enums #handler #state #bloc