def print.go
bend-lint-rules@0.2.0.0 · layout/format.bend:2008
import bend-lint-rules@0.2.0.0/layout/format.bend as Format
import Base
import bend-lint-api@0.2.0.0/shared/strings.bend as Strings
2008
2009def print.go(fuel: Nat, p: Print, +width: Maybe<&2, U32>, +newline: String, +budget: Nat) -> String:
2010 match fuel p:
2011 case _ Print{Nil{}, out, pending, col}:
2012 Strings.onto(out, "")
2013 case 0n Print{jobs, out, pending, col}:
2014 Strings.onto(out, "")
2015 case 1n+k Print{jobs, out, pending, col}:
2016 print.go(
2017 k,
2018 print.step(jobs, out, pending, col, width, newline, budget),
2019 width,
2020 newline,
2021 budget
2022 )