Module darling::util

source ·
Expand description

Utility types for attribute parsing.

Structs

  • A meta-item that can be present as a word - with no value - or absent.
  • A wrapper for an Ident which also keeps the value as a string.
  • An efficient way of discarding data from a syntax element.
  • A list of syn::Path instances. This type is used to extract a list of paths from an attribute.
  • A set of Shape values, which correctly handles the relationship between newtype and tuple shapes.
  • A value and an associated position in source code. The main use case for this is to preserve position information to emit warnings from proc macros. You can use a SpannedValue<T> as a field in any struct that implements or derives any of darling’s core traits.
  • A container to parse some syntax and retain access to the original.

Enums

  • A value which can inherit a default value or have an explicit value specified.
  • Description of how fields in a struct or variant are syntactically laid out.

Traits

  • Get the “shape” of a fields container, such as a struct or variant.

Functions

  • Try to parse an attribute into a meta list. Path-type meta values are accepted and returned as empty lists with their passed-in path. Name-value meta values and non-meta attributes will cause errors to be returned.
  • Transform Rust paths to a readable and comparable string.