the concatenation of 2 levels
true if there are no levels
alias for the last level
all the levels, computed with the LevelMonoid
map each node to another type given: the current type, the node number
map each node to another type given: the current type, the node number
a Tree[S] based on the level of each block, mapping each node to value of type S and possibly skipping nodes
map each node to another type given: the current type, the path from root (without the current node), the node number
map each node to another type given: the current type, the path from root (without the current node), the node number
a Tree[S] based on the level of each block, mapping each node to value of type S and possibly skipping nodes
a Tree[T] based on the level of each block
WARNING this method assumes that the Levels are not empty!!
WARNING this method assumes that the Levels are not empty!!
a Tree[S] based on the level of each block, mapping each node to value of type S and possibly skipping nodes, passing the numeric label of the current node.
JUnitDescriptions
a TreeLoc[T] based on the level of each block
This class computes the 'level' of a given fragment. It is used to indent Fragments in a ConsoleReporter and to create a tree or Descriptions in the JUnit runner
It does so by considering that some fragments have an effect on the indentation of the next fragment
- a Text fragment is an Indent(1) so it indents the next fragment once - a Tab(n) fragment is an Indent(n) so it indents the next fragment n times - a Backtab(n) fragment is an Unindent(n) so it un-indents the next fragment n times - an Example fragment is a Terminal(), it doesn't do anything. This means that 2 consecutive examples will stay at the same level - an End fragment is a Reset, it set the level of the next fragment to 0 level