Tree.first: def of bolt@1.27.0.0 Import: import bolt@1.27.0.0/src/syntax/tree.bend as Tree Lines 54-66 of bolt@1.27.0.0/src/syntax/tree.bend: https://jend.leeeet.dev/read.txt?path=bolt@1.27.0.0/src/syntax/tree.bend&start_line=54&end_line=66 import Base import bolt@1.27.0.0/src/syntax/lex.bend as Lex # the token a leaf holds; a group's open, a statement's first token def first(nn: Node) -> Maybe<&2, Lex.Tok>: match nn: case Leaf{tok}: Some{tok} case Group{open, kids, close}: Some{open} case Stmt{kind, kids, body}: first(kids) case NNil{}: None{} case NCons{h, t}: first(h) Uses (3): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/syntax/lex.bend&name=Tok https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/syntax/tree.bend&name=Node