def props.fold
gralha-svg-render@0.1.0.1 · svg.bend:2018
import gralha-svg-render@0.1.0.1/svg.bend as Svg
import Base
import gralha-xml-doc@0.1.0.1/xml.bend as XML
2018def props.fold(spec: List<&2, Prop>, +parent: List<&2, XML.Attr>, +as: List<&2, XML.Attr>) -> List<&2, XML.Attr>:
2019 match spec:
2020 case Nil{}: as
2021 case Con{Prop{key, initial, inherited}, rest}:
2022 +k = key
2023 +ini = initial
2024 Con{XML.Attr{k, style.value(as, k, props.head.value(parent, k, ini), ini, inherited)}, props.fold(rest, props.advance(parent, k), as)}