[][src]Module structural::path

Types used to refer to the field(s) that one is accessing.

The re-exported items are all field-path related.

Re-exports

pub use crate::field_path_aliases;
pub use crate::fp;
pub use crate::FP;
pub use crate::FieldPathSet;
pub use crate::NestedFieldPath;
pub use crate::NestedFieldPathSet;
pub use crate::TStr;
pub use crate::VariantField;
pub use crate::VariantName;

Modules

aliases

Aliases for field paths.

array_paths

Traits for paths when used for arrays,and aliases for indices up to 31.

string_aliases

Aliases for TStr.

Structs

AliasedPaths

A merker type indicating that a (Nested)FieldPathSet might not contain unique field paths. It's not possible to pass a FieldPathSet<_,AliasedPaths> to StructuralExt::fields_mut or StructuralExt::into_fields.

LargePathSet

A newtype wrapper used to allow FieldPathSet to access from 9 up to 64 fields.

UniquePaths

A merker type indicating that a (Nested)FieldPathSet contains unique field paths, in which no path is a prefix of any other path in the set, this is required to call StructuralExt::fields_mut or StructuralExt::into_fields.

Traits

IntoAliasing

Converts a FieldPathSet<_,UniquePaths> into a FieldPathSet<_,AliasedPaths> on the type level.

IsMultiFieldPath

A marker trait for field paths that refer to multiple fields

IsSingleFieldPath

A marker trait for field paths that only refers to one field.

IsTStr

A marker trait for type-level strings.

ShallowFieldPath

A marker trait for field paths of non-nested field(s).

Type Definitions

IntoAliasingOut

Converts a FieldPathSet<_,UniquePaths> into a FieldPathSet<_,AliasedPaths> on the type level.