I'm somewhat confident that the code is secure, but no matter how confident I am, or how well I present the proofs, it will always be easier to communicate this confidence to others by just not having any unsafes in the code. A safe version of the termpose parser is probably possible, a safe version of woodslist must be. Safety is highly desirable for a parser, which may be receiving data from untrusted sources. Parsing performance is just not this important for human-readable formats.