TransformingPropertyMap

public struct TransformingPropertyMap<NewValue, Underlying> : PropertyMap where Underlying : PropertyMap
extension TransformingPropertyMap: ParallelCapablePropertyMap where Underlying: ParallelCapablePropertyMap

Transforms an existing property map (Underlying) to project out a single underlying field from its Value.

Beware: this results in extra copies when mutating the underlying values.

See also

PropertyMap.transform.
  • Declaration

    Swift

    public func get(_ key: Underlying.Key, in graph: Underlying.Graph) -> NewValue
  • Declaration

    Swift

    public mutating func set(_ key: Underlying.Key, in graph: inout Underlying.Graph, to newValue: NewValue)

Available where Underlying: ParallelCapablePropertyMap

  • Declaration

    Swift

    public func get(_ key: Underlying.Key, in graph: Underlying.Graph.ParallelProjection) -> NewValue
  • Declaration

    Swift

    public mutating func set(_ key: Underlying.Key, in graph: inout Underlying.Graph.ParallelProjection, to newValue: NewValue)