This makes the debugging aspect (constructing the truncated tree) entirely independent from the shrinking/running infrastructure, and will not be used unless explicitly invoked (in tests of the library itself). This improves separation of concern (necessary for the next commit), and as a bonus improves shrinking performance (seems to be about 30%, but that number is fair from scientific).
This makes the debugging aspect (constructing the truncated tree) entirely independent from the shrinking/running infrastructure, and will not be used unless explicitly invoked (in tests of the library itself). This improves separation of concern (necessary for the next commit), and as a bonus improves shrinking performance (seems to be about 30%, but that number is fair from scientific).