optional

Create an optional branch. If the optional branch matches, what it stores will is passed transparently, just like if the optional { } was not there. If the optional branch does not match, nothing happens, just like if the entire optional branch was not there.

Typical usage may look like:

MyNode {
// Everything here must be present in order to have a match...
expect(...)
expect(...)
optional {
// This branch is optional
expect(...)
}
}