def text.paint.take
gralha-svg-render@0.1.0.1 · svg.bend:3652
import gralha-svg-render@0.1.0.1/svg.bend as Svg
import Base
import gralha-text-scan@0.1.0.1/scan.bend as U
import gralha-xml-doc@0.1.0.1/xml.bend as XML
3652def text.paint.take(+xs: List<&2, XML.Element>, +acc: List<&2, XML.Element>) -> TextPaintRun:
3653 match xs:
3654 case Nil{}: TextPaintRun{text.paint.reverse(acc, Nil{}), Nil{}}
3655 case Con{XML.Element{n, as, kids, txt}, rest}:
3656 +name = n
3657 U.branch(TextPaintRun, U.string.equal(name, "#glyph"),
3658 _ => text.paint.take(rest, Con{XML.Element{name, as, kids, txt}, acc}), _ => TextPaintRun{text.paint.reverse(acc, Nil{}), xs})