========================= Simple If Statement (No Else) ========================= parser simple() { state start { if (true) { }; transition accept; } }; --- (p4program (declaration (parserDeclaration (parserType (parser) (identifier) ) (parserStates (parserState (state) (identifier) (parserStatements (parserStatement (conditionalStatement (if) (expression (true) ) (statement (blockStatement) ) ) ) (semicolon) ) (parserTransitionStatement (transition) (transitionSelectionExpression (identifier) ) ) (semicolon) ) ) ) ) (semicolon) ) ========================= Simple If Statement (Else) ========================= parser simple() { state start { if (true) { } else { }; transition accept; } }; --- (p4program (declaration (parserDeclaration (parserType (parser) (identifier) ) (parserStates (parserState (state) (identifier) (parserStatements (parserStatement (conditionalStatement (if) (expression (true) ) (statement (blockStatement) ) (else) (statement (blockStatement) ) ) ) (semicolon) ) (parserTransitionStatement (transition) (transitionSelectionExpression (identifier) ) ) (semicolon) ) ) ) ) (semicolon) ) ========================= Simple Assignment Statement (To Identifier) ========================= parser simple() { state start { string l = "testing"; l = "five"; transition accept; } }; --- (p4program (declaration (parserDeclaration (parserType (parser) (identifier) ) (parserStates (parserState (state) (identifier) (parserLocalElements (parserLocalElement (variableDeclaration (typeRef (baseType (string) ) ) (identifier) (assignment) (expression (string_literal) ) ) ) (semicolon) ) (parserStatements (parserStatement (assignmentStatement (expression (identifier) ) (assignment) (expression (string_literal) ) ) ) (semicolon) ) (parserTransitionStatement (transition) (transitionSelectionExpression (identifier) ) ) (semicolon) ) ) ) ) (semicolon) )