Factored out a very complex condition into a helper function and documented it. (details)
Moved ParseNode's name field down to DeclarationNode, it is not used in any of the other child classes. (details)
Factored out the ParseNode's next field into a new child type. This is only type safe when used in the given one level curiously reoccurring template pattern, as it is now. This allowed most of the intermedate helpers to be removed. (details)
Commit
bc61563c4a48cab77ce48a03a73abf55b627a27f
by ajbeach
Factored out a very complex condition into a helper function and documented it.
Commit
dc3fbe5bd865dbd99791884dd9ea7dbd1bbbb45e
by ajbeach
Factored out the ParseNode's next field into a new child type. This is only type safe when used in the given one level curiously reoccurring template pattern, as it is now. This allowed most of the intermedate helpers to be removed.