Crate rust_key_paths Copy item path Source containers keypath Macro to create a KeyPath (readable, non-optional) opt_keypath Macro to create an OptionalKeyPath (readable, optional) writable_keypath Macro to create a WritableKeyPath (writable, non-optional) writable_opt_keypath Macro to create a WritableOptionalKeyPath (writable, optional) AnyKeyPath AnyKeyPath - Hides both Root and Value types
Equivalent to Swift’s AnyKeyPath
Useful for storing keypaths in collections without knowing either type AnyWritableKeyPath AnyWritableKeyPath - Hides both Root and Value types (writable) ArcMutexKeyPathChain A composed keypath chain through Arc<Mutex> - functional style
Build the chain first, then apply container at get() time ArcMutexOptionalKeyPathChain A composed optional keypath chain through Arc<Mutex> - functional style ArcMutexWritableKeyPathChain A composed writable keypath chain through Arc<Mutex> - functional style
Build the chain first, then apply container at get_mut() time ArcMutexWritableOptionalKeyPathChain A composed writable optional keypath chain through Arc<Mutex> - functional style ArcParkingMutexKeyPathChain A composed keypath chain through Arc<parking_lot::Mutex> - functional style ArcParkingMutexOptionalKeyPathChain A composed optional keypath chain through Arc<parking_lot::Mutex> - functional style ArcParkingMutexWritableKeyPathChain A composed writable keypath chain through Arc<parking_lot::Mutex> - functional style ArcParkingMutexWritableOptionalKeyPathChain A composed writable optional keypath chain through Arc<parking_lot::Mutex> - functional style ArcParkingRwLockKeyPathChain A composed keypath chain through Arc<parking_lot::RwLock> - functional style ArcParkingRwLockOptionalKeyPathChain A composed optional keypath chain through Arc<parking_lot::RwLock> - functional style ArcParkingRwLockWritableKeyPathChain A composed writable keypath chain through Arc<parking_lot::RwLock> - functional style ArcParkingRwLockWritableOptionalKeyPathChain A composed writable optional keypath chain through Arc<parking_lot::RwLock> - functional style ArcRwLockKeyPathChain A composed keypath chain through Arc<RwLock> - functional style
Build the chain first, then apply container at get() time ArcRwLockOptionalKeyPathChain A composed optional keypath chain through Arc<RwLock> - functional style ArcRwLockWritableKeyPathChain A composed writable keypath chain through Arc<RwLock> - functional style
Build the chain first, then apply container at get_mut() time (uses write lock) ArcRwLockWritableOptionalKeyPathChain A composed writable optional keypath chain through Arc<RwLock> - functional style
Build the chain first, then apply container at get_mut() time (uses write lock) ArcTokioMutexKeyPathChain A composed async keypath chain through Arc<tokio::sync::Mutex> - functional style ArcTokioMutexOptionalKeyPathChain A composed optional async keypath chain through Arc<tokio::sync::Mutex> - functional style ArcTokioMutexWritableKeyPathChain A composed writable async keypath chain through Arc<tokio::sync::Mutex> - functional style ArcTokioMutexWritableOptionalKeyPathChain A composed writable optional async keypath chain through Arc<tokio::sync::Mutex> - functional style ArcTokioRwLockKeyPathChain A composed async keypath chain through Arc<tokio::sync::RwLock> - functional style ArcTokioRwLockOptionalKeyPathChain A composed optional async keypath chain through Arc<tokio::sync::RwLock> - functional style ArcTokioRwLockWritableKeyPathChain A composed writable async keypath chain through Arc<tokio::sync::RwLock> - functional style ArcTokioRwLockWritableOptionalKeyPathChain A composed writable optional async keypath chain through Arc<tokio::sync::RwLock> - functional style EnumKeyPath EnumKeyPath - A keypath for enum variants that supports both extraction and embedding
Uses generic type parameters instead of dynamic dispatch for zero-cost abstraction FailableCombinedKeyPath FailableCombinedKeyPath - A keypath that supports readable, writable, and owned access patterns KeyPath OptionalArcMutexKeyPathChain A composed keypath chain from OptionalKeyPath through Arc<Mutex> - functional style OptionalArcMutexOptionalKeyPathChain A composed optional keypath chain from OptionalKeyPath through Arc<Mutex> - functional style OptionalArcMutexWritableKeyPathChain A composed writable keypath chain from optional keypath through Arc<Mutex> - functional style
Build the chain first, then apply container at get_mut() time OptionalArcMutexWritableOptionalKeyPathChain A composed writable optional keypath chain from optional keypath through Arc<Mutex> - functional style
Build the chain first, then apply container at get_mut() time OptionalArcParkingMutexKeyPathChain A composed keypath chain from optional keypath through Arc<parking_lot::Mutex> - functional style OptionalArcParkingMutexOptionalKeyPathChain A composed optional keypath chain from optional keypath through Arc<parking_lot::Mutex> OptionalArcParkingMutexWritableKeyPathChain A composed writable keypath chain from optional keypath through Arc<parking_lot::Mutex> OptionalArcParkingMutexWritableOptionalKeyPathChain A composed writable optional keypath chain from optional keypath through Arc<parking_lot::Mutex> OptionalArcParkingRwLockKeyPathChain A composed keypath chain from optional keypath through Arc<parking_lot::RwLock> - functional style OptionalArcParkingRwLockOptionalKeyPathChain A composed optional keypath chain from optional keypath through Arc<parking_lot::RwLock> OptionalArcParkingRwLockWritableKeyPathChain A composed writable keypath chain from optional keypath through Arc<parking_lot::RwLock> OptionalArcParkingRwLockWritableOptionalKeyPathChain A composed writable optional keypath chain from optional keypath through Arc<parking_lot::RwLock> OptionalArcRwLockKeyPathChain A composed keypath chain from OptionalKeyPath through Arc<RwLock> - functional style OptionalArcRwLockOptionalKeyPathChain A composed optional keypath chain from OptionalKeyPath through Arc<RwLock> - functional style OptionalArcRwLockWritableKeyPathChain A composed writable keypath chain from optional keypath through Arc<RwLock> - functional style
Build the chain first, then apply container at get_mut() time (uses write lock) OptionalArcRwLockWritableOptionalKeyPathChain A composed writable optional keypath chain from optional keypath through Arc<RwLock> - functional style
Build the chain first, then apply container at get_mut() time (uses write lock) OptionalArcTokioMutexKeyPathChain A composed async keypath chain from optional keypath through Arc<tokio::sync::Mutex> - functional style OptionalArcTokioMutexOptionalKeyPathChain A composed optional async keypath chain from optional keypath through Arc<tokio::sync::Mutex> OptionalArcTokioMutexWritableKeyPathChain A composed writable async keypath chain from optional keypath through Arc<tokio::sync::Mutex> OptionalArcTokioMutexWritableOptionalKeyPathChain A composed writable optional async keypath chain from optional keypath through Arc<tokio::sync::Mutex> OptionalArcTokioRwLockKeyPathChain A composed async keypath chain from optional keypath through Arc<tokio::sync::RwLock> - functional style OptionalArcTokioRwLockOptionalKeyPathChain A composed optional async keypath chain from optional keypath through Arc<tokio::sync::RwLock> OptionalArcTokioRwLockWritableKeyPathChain A composed writable async keypath chain from optional keypath through Arc<tokio::sync::RwLock> OptionalArcTokioRwLockWritableOptionalKeyPathChain A composed writable optional async keypath chain from optional keypath through Arc<tokio::sync::RwLock> OptionalKeyPath PartialKeyPath PartialKeyPath - Hides the Value type but keeps Root visible
Useful for storing keypaths in collections without knowing the exact Value type PartialOptionalKeyPath PartialOptionalKeyPath - Hides the Value type but keeps Root visible
Useful for storing optional keypaths in collections without knowing the exact Value type PartialWritableKeyPath PartialWritableKeyPath - Hides the Value type but keeps Root visible (writable) PartialWritableOptionalKeyPath PartialWritableOptionalKeyPath - Hides the Value type but keeps Root visible (writable optional) WritableKeyPath WritableOptionalKeyPath WithContainer Trait for no-clone callback-based access to container types
Provides methods to execute closures with references to values inside containers
without requiring cloning of the values for_slice variant_of AnyKeypaths Derives fully type-erased keypath methods. Casepaths Derives case path methods for enum variants. Keypath Derives a single keypath method for each struct field. Keypaths Derives keypath methods for struct fields. PartialKeypaths Derives type-erased keypath methods with known root type. ReadableKeypaths Derives only readable keypath methods for struct fields. WritableKeypaths Derives only writable keypath methods for struct fields.