BNFProduction: publicprivateprotectedReturnType#<IDENTIFIER>FormalParametersThrowsListTreeNodeDescriptorRECOVER\_TORECOVER_TOExpansionChoice:<IDENTIFIER>:Block#ExpansionChoice;
TreeNodeDescriptor: #Nameabstractinterfacevoid(>>=<<=+-Expression)
ExpansionChoice: |1..NExpansionSequence
ExpansionSequence: LookaheadExpansionUnit!
ExpansionUnit: UNCACHE\_TOKENSFailureCodeBlock#UnparsedCodeBlockAttemptBlockTryBlockAssertionExpansionWithParenthesesZeroOrOneTerminalNonTerminalInlineTreeNodeDescriptor
Failure: FAIL:ExpressionCodeBlock
AttemptBlock: ATTEMPTExpansionChoiceRECOVERExpansionWithParenthesesCodeBlock
UnparsedCodeBlock: {$<UNPARSED\_CONTENT>$}
TryBlock: try{ExpansionChoice}CatchBlockFinallyBlock
Assertion: ASSERT{Expression}#~(ExpansionChoice):Expression:=>||
ExpansionWithParentheses: LexicalStateSwitchTokenActivationAssignment(ExpansionChoice)*?+!=>||
ZeroOrOne: LexicalStateSwitchTokenActivationAssignment[ExpansionChoice]!=>||
NonTerminal: Assignment<IDENTIFIER>InvocationArguments!ChildNameInfo=>||
Terminal: AssignmentRegexpStringLiteralRegexpRefEndOfFile!ChildNameInfo=>||
InlineTreeNodeDescriptor: \\Assignment#Name(>>=<<=+-Expression)(Expression)
Assignment: @Name/Name/=:==?:=?=$:=$+=:+=