|
|
|
/* $ANTLR 2.7.7 (20070609): "ada.tree.g" -> "AdaTreeParserSuper.cpp"$ */
|
|
|
|
#include "AdaTreeParserSuper.h"
|
|
|
|
#include <antlr/Token.h>
|
|
|
|
#include <antlr/AST.h>
|
|
|
|
#include <antlr/NoViableAltException.h>
|
|
|
|
#include <antlr/MismatchedTokenException.h>
|
|
|
|
#include <antlr/SemanticException.h>
|
|
|
|
#include <antlr/BitSet.h>
|
|
|
|
#line 1 "ada.tree.g"
|
|
|
|
#line 11 "AdaTreeParserSuper.cpp"
|
|
|
|
AdaTreeParserSuper::AdaTreeParserSuper()
|
|
|
|
: ANTLR_USE_NAMESPACE(antlr)TreeParser() {
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::compilation_unit(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST compilation_unit_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
context_items_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case LIBRARY_ITEM:
|
|
|
|
{
|
|
|
|
library_item(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SUBUNIT:
|
|
|
|
{
|
|
|
|
subunit(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == PRAGMA)) {
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop4;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop4:;
|
|
|
|
} // ( ... )*
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::context_items_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST context_items_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t12 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp1_AST_in = _t;
|
|
|
|
match(_t,CONTEXT_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case WITH_CLAUSE:
|
|
|
|
{
|
|
|
|
with_clause(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case USE_CLAUSE:
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
{
|
|
|
|
use_clause(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop14;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop14:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t12;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::library_item(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST library_item_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t32 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp2_AST_in = _t;
|
|
|
|
match(_t,LIBRARY_ITEM);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ABSTRACT_FUNCTION_DECLARATION:
|
|
|
|
case ABSTRACT_PROCEDURE_DECLARATION:
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
case FUNCTION_BODY_STUB:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case FUNCTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_INSTANTIATION:
|
|
|
|
case GENERIC_PROCEDURE_INSTANTIATION:
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
case PROCEDURE_BODY_STUB:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
case PROCEDURE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
subprog_decl_or_rename_or_inst_or_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_BODY:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t34 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp3_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
pkg_body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t34;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_PACKAGE_INSTANTIATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t35 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp4_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PACKAGE_INSTANTIATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
generic_inst(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t35;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_SPECIFICATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t36 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp5_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_SPECIFICATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
pkg_spec_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t36;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t37 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp6_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_RENAMING_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t37;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_PACKAGE_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_RENAMING:
|
|
|
|
case GENERIC_PACKAGE_RENAMING:
|
|
|
|
case GENERIC_PROCEDURE_DECLARATION:
|
|
|
|
case GENERIC_PROCEDURE_RENAMING:
|
|
|
|
{
|
|
|
|
generic_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t32;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subunit(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subunit_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t514 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp7_AST_in = _t;
|
|
|
|
match(_t,SUBUNIT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
{
|
|
|
|
subprogram_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_BODY:
|
|
|
|
{
|
|
|
|
package_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TASK_BODY:
|
|
|
|
{
|
|
|
|
task_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROTECTED_BODY:
|
|
|
|
{
|
|
|
|
protected_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t514;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::pragma(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST pragma_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t6 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp8_AST_in = _t;
|
|
|
|
match(_t,PRAGMA);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp9_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_0.member(_t->getType()))) {
|
|
|
|
pragma_arg(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop8;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop8:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t6;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::pragma_arg(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST pragma_arg_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case RIGHT_SHAFT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t10 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp10_AST_in = _t;
|
|
|
|
match(_t,RIGHT_SHAFT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp11_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t10;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::expression(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST expression_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case AND:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t472 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp12_AST_in = _t;
|
|
|
|
match(_t,AND);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
relation(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t472;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case AND_THEN:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t473 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp13_AST_in = _t;
|
|
|
|
match(_t,AND_THEN);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
relation(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t473;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OR:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t474 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp14_AST_in = _t;
|
|
|
|
match(_t,OR);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
relation(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t474;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OR_ELSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t475 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp15_AST_in = _t;
|
|
|
|
match(_t,OR_ELSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
relation(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t475;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case XOR:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t476 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp16_AST_in = _t;
|
|
|
|
match(_t,XOR);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
relation(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t476;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case NOT_IN:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
relation(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::with_clause(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST with_clause_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t16 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp17_AST_in = _t;
|
|
|
|
match(_t,WITH_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt18=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == IDENTIFIER || _t->getType() == DOT)) {
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt18>=1 ) { goto _loop18; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt18++;
|
|
|
|
}
|
|
|
|
_loop18:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t16;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::use_clause(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST use_clause_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t22 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp18_AST_in = _t;
|
|
|
|
match(_t,USE_TYPE_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt24=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == IDENTIFIER || _t->getType() == DOT || _t->getType() == TIC)) {
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt24>=1 ) { goto _loop24; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt24++;
|
|
|
|
}
|
|
|
|
_loop24:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t22;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case USE_CLAUSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t25 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp19_AST_in = _t;
|
|
|
|
match(_t,USE_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt27=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == IDENTIFIER || _t->getType() == DOT)) {
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt27>=1 ) { goto _loop27; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt27++;
|
|
|
|
}
|
|
|
|
_loop27:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t25;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::compound_name(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST compound_name_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp20_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t20 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp21_AST_in = _t;
|
|
|
|
match(_t,DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp22_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
_t = __t20;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subtype_mark(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subtype_mark_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TIC:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t29 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp23_AST_in = _t;
|
|
|
|
match(_t,TIC);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
attribute_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t29;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::attribute_id(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST attribute_id_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case RANGE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp24_AST_in = _t;
|
|
|
|
match(_t,RANGE);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DIGITS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp25_AST_in = _t;
|
|
|
|
match(_t,DIGITS);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DELTA:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp26_AST_in = _t;
|
|
|
|
match(_t,DELTA);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCESS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp27_AST_in = _t;
|
|
|
|
match(_t,ACCESS);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp28_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::modifiers(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST modifiers_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t39 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp29_AST_in = _t;
|
|
|
|
match(_t,MODIFIERS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ABSTRACT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp30_AST_in = _t;
|
|
|
|
match(_t,ABSTRACT);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCESS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp31_AST_in = _t;
|
|
|
|
match(_t,ACCESS);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ALIASED:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp32_AST_in = _t;
|
|
|
|
match(_t,ALIASED);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ALL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp33_AST_in = _t;
|
|
|
|
match(_t,ALL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CONSTANT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp34_AST_in = _t;
|
|
|
|
match(_t,CONSTANT);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IN:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp35_AST_in = _t;
|
|
|
|
match(_t,IN);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case LIMITED:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp36_AST_in = _t;
|
|
|
|
match(_t,LIMITED);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OUT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp37_AST_in = _t;
|
|
|
|
match(_t,OUT);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PRIVATE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp38_AST_in = _t;
|
|
|
|
match(_t,PRIVATE);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROTECTED:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp39_AST_in = _t;
|
|
|
|
match(_t,PROTECTED);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case REVERSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp40_AST_in = _t;
|
|
|
|
match(_t,REVERSE);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TAGGED:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp41_AST_in = _t;
|
|
|
|
match(_t,TAGGED);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop41;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop41:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t39;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subprog_decl_or_rename_or_inst_or_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subprog_decl_or_rename_or_inst_or_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ABSTRACT_FUNCTION_DECLARATION:
|
|
|
|
case ABSTRACT_PROCEDURE_DECLARATION:
|
|
|
|
case FUNCTION_BODY_STUB:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case FUNCTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_INSTANTIATION:
|
|
|
|
case GENERIC_PROCEDURE_INSTANTIATION:
|
|
|
|
case PROCEDURE_BODY_STUB:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
case PROCEDURE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
subprog_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
{
|
|
|
|
procedure_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
{
|
|
|
|
function_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::def_id(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST def_id_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::pkg_body_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST pkg_body_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
declarative_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
block_body_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::generic_inst(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST generic_inst_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case VALUES:
|
|
|
|
{
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::pkg_spec_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST pkg_spec_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
basic_declarative_items_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
private_declarative_items_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::renames(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST renames_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case CHARACTER_STRING:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp42_AST_in = _t;
|
|
|
|
match(_t,CHARACTER_STRING);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp43_AST_in = _t;
|
|
|
|
match(_t,OPERATOR_SYMBOL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
{
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::generic_decl(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST generic_decl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case GENERIC_PACKAGE_RENAMING:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t277 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp44_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PACKAGE_RENAMING);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
generic_formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t277;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_PACKAGE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t278 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp45_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PACKAGE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
generic_formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
pkg_spec_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t278;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_PROCEDURE_RENAMING:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t279 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp46_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PROCEDURE_RENAMING);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
generic_formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t279;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t280 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp47_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
generic_formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t280;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_FUNCTION_RENAMING:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t281 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp48_AST_in = _t;
|
|
|
|
match(_t,GENERIC_FUNCTION_RENAMING);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
generic_formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t281;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t282 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp49_AST_in = _t;
|
|
|
|
match(_t,GENERIC_FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
generic_formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t282;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::id_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST id_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t43 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp50_AST_in = _t;
|
|
|
|
match(_t,ID_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t43;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::def_designator(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST def_designator_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
definable_operator_symbol(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::end_id_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST end_id_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t46 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp51_AST_in = _t;
|
|
|
|
match(_t,END);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t46;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subprog_decl(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subprog_decl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case GENERIC_PROCEDURE_INSTANTIATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t49 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp52_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PROCEDURE_INSTANTIATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
generic_inst(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t49;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROCEDURE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t50 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp53_AST_in = _t;
|
|
|
|
match(_t,PROCEDURE_RENAMING_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t50;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t51 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp54_AST_in = _t;
|
|
|
|
match(_t,PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t51;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROCEDURE_BODY_STUB:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t52 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp55_AST_in = _t;
|
|
|
|
match(_t,PROCEDURE_BODY_STUB);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t52;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ABSTRACT_PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t53 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp56_AST_in = _t;
|
|
|
|
match(_t,ABSTRACT_PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t53;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_FUNCTION_INSTANTIATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t54 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp57_AST_in = _t;
|
|
|
|
match(_t,GENERIC_FUNCTION_INSTANTIATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
generic_inst(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t54;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t55 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp58_AST_in = _t;
|
|
|
|
match(_t,FUNCTION_RENAMING_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t55;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t56 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp59_AST_in = _t;
|
|
|
|
match(_t,FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t56;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_BODY_STUB:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t57 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp60_AST_in = _t;
|
|
|
|
match(_t,FUNCTION_BODY_STUB);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t57;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ABSTRACT_FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t58 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp61_AST_in = _t;
|
|
|
|
match(_t,ABSTRACT_FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t58;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::formal_part_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST formal_part_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t84 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp62_AST_in = _t;
|
|
|
|
match(_t,FORMAL_PART_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == PARAMETER_SPECIFICATION)) {
|
|
|
|
parameter_specification(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop86;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop86:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t84;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::function_tail(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST function_tail_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::value_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST value_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t468 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp63_AST_in = _t;
|
|
|
|
match(_t,VALUES);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt470=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_1.member(_t->getType()))) {
|
|
|
|
value(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt470>=1 ) { goto _loop470; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt470++;
|
|
|
|
}
|
|
|
|
_loop470:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t468;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::value(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST value_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case OTHERS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t63 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp64_AST_in = _t;
|
|
|
|
match(_t,OTHERS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t63;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RIGHT_SHAFT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t64 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp65_AST_in = _t;
|
|
|
|
match(_t,RIGHT_SHAFT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ranged_expr_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t64;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case RANGE:
|
|
|
|
case PIPE:
|
|
|
|
case DOT_DOT:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
ranged_expr_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::ranged_expr_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST ranged_expr_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PIPE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t66 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp66_AST_in = _t;
|
|
|
|
match(_t,PIPE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ranged_expr_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
ranged_expr(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t66;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case RANGE:
|
|
|
|
case DOT_DOT:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
ranged_expr(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::ranged_expr(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST ranged_expr_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t68 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp67_AST_in = _t;
|
|
|
|
match(_t,DOT_DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t68;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RANGE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t69 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp68_AST_in = _t;
|
|
|
|
match(_t,RANGE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t69;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::simple_expression(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST simple_expression_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PLUS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t488 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp69_AST_in = _t;
|
|
|
|
match(_t,PLUS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
signed_term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t488;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case MINUS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t489 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp70_AST_in = _t;
|
|
|
|
match(_t,MINUS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
signed_term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t489;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CONCAT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t490 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp71_AST_in = _t;
|
|
|
|
match(_t,CONCAT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
signed_term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t490;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case NOT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
signed_term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::range(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST range_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
{
|
|
|
|
range_dots(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
{
|
|
|
|
range_attrib_ref(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::range_constraint(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST range_constraint_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t71 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp72_AST_in = _t;
|
|
|
|
match(_t,RANGE_CONSTRAINT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t71;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::range_dots(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST range_dots_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t75 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp73_AST_in = _t;
|
|
|
|
match(_t,DOT_DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t75;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::range_attrib_ref(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST range_attrib_ref_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t77 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp74_AST_in = _t;
|
|
|
|
match(_t,RANGE_ATTRIBUTE_REFERENCE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
prefix(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t77;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prefix(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prefix_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp75_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t80 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp76_AST_in = _t;
|
|
|
|
match(_t,DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
prefix(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ALL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp77_AST_in = _t;
|
|
|
|
match(_t,ALL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp78_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t80;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t82 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp79_AST_in = _t;
|
|
|
|
match(_t,INDEXED_COMPONENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
prefix(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t82;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::parameter_specification(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST parameter_specification_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t88 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp80_AST_in = _t;
|
|
|
|
match(_t,PARAMETER_SPECIFICATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
init_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t88;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::defining_identifier_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST defining_identifier_list_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t90 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp81_AST_in = _t;
|
|
|
|
match(_t,DEFINING_IDENTIFIER_LIST);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt92=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == IDENTIFIER)) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp82_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt92>=1 ) { goto _loop92; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt92++;
|
|
|
|
}
|
|
|
|
_loop92:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t90;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::init_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST init_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t136 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp83_AST_in = _t;
|
|
|
|
match(_t,INIT_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t136;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::name(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST name_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp84_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t95 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp85_AST_in = _t;
|
|
|
|
match(_t,DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ALL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp86_AST_in = _t;
|
|
|
|
match(_t,ALL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp87_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp88_AST_in = _t;
|
|
|
|
match(_t,CHARACTER_LITERAL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp89_AST_in = _t;
|
|
|
|
match(_t,OPERATOR_SYMBOL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t95;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t97 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp90_AST_in = _t;
|
|
|
|
match(_t,INDEXED_COMPONENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t97;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TIC:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t98 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp91_AST_in = _t;
|
|
|
|
match(_t,TIC);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
attribute_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t98;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::definable_operator_symbol(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST definable_operator_symbol_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp92_AST_in = _t;
|
|
|
|
match(_t,OPERATOR_SYMBOL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::parenthesized_primary(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST parenthesized_primary_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t101 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp93_AST_in = _t;
|
|
|
|
match(_t,PARENTHESIZED_PRIMARY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case NuLL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp94_AST_in = _t;
|
|
|
|
match(_t,NuLL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case VALUES:
|
|
|
|
{
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
extension_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t101;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::extension_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST extension_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t104 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp95_AST_in = _t;
|
|
|
|
match(_t,EXTENSION_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case NuLL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp96_AST_in = _t;
|
|
|
|
match(_t,NuLL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case VALUES:
|
|
|
|
{
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t104;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::spec_decl_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST spec_decl_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case GENERIC_PACKAGE_INSTANTIATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t109 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp97_AST_in = _t;
|
|
|
|
match(_t,GENERIC_PACKAGE_INSTANTIATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
generic_inst(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t109;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_SPECIFICATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t110 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp98_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_SPECIFICATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
pkg_spec_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t110;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t111 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp99_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_RENAMING_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
renames(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t111;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::basic_declarative_items_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST basic_declarative_items_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t114 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp100_AST_in = _t;
|
|
|
|
match(_t,BASIC_DECLARATIVE_ITEMS_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_2.member(_t->getType()))) {
|
|
|
|
basic_decl_item(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop116;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop116:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t114;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::private_declarative_items_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST private_declarative_items_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t118 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp101_AST_in = _t;
|
|
|
|
match(_t,PRIVATE_DECLARATIVE_ITEMS_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_2.member(_t->getType()))) {
|
|
|
|
basic_decl_item(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop120;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop120:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t118;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::basic_decl_item(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST basic_decl_item_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PACKAGE_RENAMING_DECLARATION:
|
|
|
|
case PACKAGE_SPECIFICATION:
|
|
|
|
case GENERIC_PACKAGE_INSTANTIATION:
|
|
|
|
{
|
|
|
|
spec_decl_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SINGLE_TASK_DECLARATION:
|
|
|
|
case TASK_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
task_type_or_single_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROTECTED_TYPE_DECLARATION:
|
|
|
|
case SINGLE_PROTECTED_DECLARATION:
|
|
|
|
{
|
|
|
|
prot_type_or_single_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ABSTRACT_FUNCTION_DECLARATION:
|
|
|
|
case ABSTRACT_PROCEDURE_DECLARATION:
|
|
|
|
case FUNCTION_BODY_STUB:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case FUNCTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_INSTANTIATION:
|
|
|
|
case GENERIC_PROCEDURE_INSTANTIATION:
|
|
|
|
case PROCEDURE_BODY_STUB:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
case PROCEDURE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
subprog_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case EXCEPTION_DECLARATION:
|
|
|
|
case EXCEPTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_PACKAGE_DECLARATION:
|
|
|
|
case INCOMPLETE_TYPE_DECLARATION:
|
|
|
|
case NUMBER_DECLARATION:
|
|
|
|
case OBJECT_DECLARATION:
|
|
|
|
case OBJECT_RENAMING_DECLARATION:
|
|
|
|
case PRIVATE_EXTENSION_DECLARATION:
|
|
|
|
case PRIVATE_TYPE_DECLARATION:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
case SUBTYPE_DECLARATION:
|
|
|
|
case USE_CLAUSE:
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
case ARRAY_OBJECT_DECLARATION:
|
|
|
|
case ARRAY_TYPE_DECLARATION:
|
|
|
|
case DECIMAL_FIXED_POINT_DECLARATION:
|
|
|
|
case DERIVED_RECORD_EXTENSION:
|
|
|
|
case ENUMERATION_TYPE_DECLARATION:
|
|
|
|
case FLOATING_POINT_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_RENAMING:
|
|
|
|
case GENERIC_PACKAGE_RENAMING:
|
|
|
|
case GENERIC_PROCEDURE_DECLARATION:
|
|
|
|
case GENERIC_PROCEDURE_RENAMING:
|
|
|
|
case MODULAR_TYPE_DECLARATION:
|
|
|
|
case ORDINARY_DERIVED_TYPE_DECLARATION:
|
|
|
|
case ORDINARY_FIXED_POINT_DECLARATION:
|
|
|
|
case RECORD_TYPE_DECLARATION:
|
|
|
|
case SIGNED_INTEGER_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
decl_common(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::task_type_or_single_decl(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST task_type_or_single_decl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case TASK_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t123 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp102_AST_in = _t;
|
|
|
|
match(_t,TASK_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
discrim_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
task_definition_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t123;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SINGLE_TASK_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t124 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp103_AST_in = _t;
|
|
|
|
match(_t,SINGLE_TASK_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
task_definition_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t124;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prot_type_or_single_decl(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prot_type_or_single_decl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PROTECTED_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t164 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp104_AST_in = _t;
|
|
|
|
match(_t,PROTECTED_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
discrim_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
protected_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t164;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SINGLE_PROTECTED_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t165 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp105_AST_in = _t;
|
|
|
|
match(_t,SINGLE_PROTECTED_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
protected_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t165;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::decl_common(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST decl_common_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ENUMERATION_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t184 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp106_AST_in = _t;
|
|
|
|
match(_t,ENUMERATION_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp107_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
enum_id_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t184;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SIGNED_INTEGER_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t185 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp108_AST_in = _t;
|
|
|
|
match(_t,SIGNED_INTEGER_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp109_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t185;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case MODULAR_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t186 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp110_AST_in = _t;
|
|
|
|
match(_t,MODULAR_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp111_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t186;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FLOATING_POINT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t187 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp112_AST_in = _t;
|
|
|
|
match(_t,FLOATING_POINT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp113_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_constraint_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t187;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ORDINARY_FIXED_POINT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t188 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp114_AST_in = _t;
|
|
|
|
match(_t,ORDINARY_FIXED_POINT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp115_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t188;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DECIMAL_FIXED_POINT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t189 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp116_AST_in = _t;
|
|
|
|
match(_t,DECIMAL_FIXED_POINT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp117_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_constraint_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t189;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ARRAY_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
array_type_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
access_type_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case INCOMPLETE_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t190 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp118_AST_in = _t;
|
|
|
|
match(_t,INCOMPLETE_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp119_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
discrim_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t190;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PRIVATE_EXTENSION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t191 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp120_AST_in = _t;
|
|
|
|
match(_t,PRIVATE_EXTENSION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_and_discrim(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t191;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DERIVED_RECORD_EXTENSION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t192 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp121_AST_in = _t;
|
|
|
|
match(_t,DERIVED_RECORD_EXTENSION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_and_discrim(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
record_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t192;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ORDINARY_DERIVED_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t193 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp122_AST_in = _t;
|
|
|
|
match(_t,ORDINARY_DERIVED_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_and_discrim(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t193;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PRIVATE_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t194 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp123_AST_in = _t;
|
|
|
|
match(_t,PRIVATE_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_and_discrim(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t194;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RECORD_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t195 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp124_AST_in = _t;
|
|
|
|
match(_t,RECORD_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_and_discrim(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
record_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t195;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SUBTYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t196 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp125_AST_in = _t;
|
|
|
|
match(_t,SUBTYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp126_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t196;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GENERIC_PACKAGE_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_RENAMING:
|
|
|
|
case GENERIC_PACKAGE_RENAMING:
|
|
|
|
case GENERIC_PROCEDURE_DECLARATION:
|
|
|
|
case GENERIC_PROCEDURE_RENAMING:
|
|
|
|
{
|
|
|
|
generic_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case USE_CLAUSE:
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
{
|
|
|
|
use_clause(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
{
|
|
|
|
rep_spec(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case EXCEPTION_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t197 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp127_AST_in = _t;
|
|
|
|
match(_t,EXCEPTION_RENAMING_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t197;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OBJECT_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t198 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp128_AST_in = _t;
|
|
|
|
match(_t,OBJECT_RENAMING_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t198;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case EXCEPTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t199 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp129_AST_in = _t;
|
|
|
|
match(_t,EXCEPTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t199;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case NUMBER_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t200 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp130_AST_in = _t;
|
|
|
|
match(_t,NUMBER_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t200;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ARRAY_OBJECT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t201 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp131_AST_in = _t;
|
|
|
|
match(_t,ARRAY_OBJECT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
array_type_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
init_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t201;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OBJECT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t202 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp132_AST_in = _t;
|
|
|
|
match(_t,OBJECT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
init_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t202;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discrim_part_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discrim_part_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t127 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp133_AST_in = _t;
|
|
|
|
match(_t,DISCRIM_PART_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case BOX:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp134_AST_in = _t;
|
|
|
|
match(_t,BOX);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DISCRIMINANT_SPECIFICATIONS:
|
|
|
|
{
|
|
|
|
discriminant_specifications(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t127;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::task_definition_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST task_definition_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
task_items_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
private_task_items_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::task_items_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST task_items_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t139 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp135_AST_in = _t;
|
|
|
|
match(_t,TASK_ITEMS_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
entrydecls_repspecs_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t139;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::private_task_items_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST private_task_items_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t162 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp136_AST_in = _t;
|
|
|
|
match(_t,PRIVATE_TASK_ITEMS_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
entrydecls_repspecs_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t162;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discriminant_specifications(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discriminant_specifications_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t130 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp137_AST_in = _t;
|
|
|
|
match(_t,DISCRIMINANT_SPECIFICATIONS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == DISCRIMINANT_SPECIFICATION)) {
|
|
|
|
discriminant_specification(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop132;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop132:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t130;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discriminant_specification(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discriminant_specification_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t134 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp138_AST_in = _t;
|
|
|
|
match(_t,DISCRIMINANT_SPECIFICATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
init_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t134;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entrydecls_repspecs_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entrydecls_repspecs_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ENTRY_DECLARATION:
|
|
|
|
{
|
|
|
|
entry_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
{
|
|
|
|
rep_spec(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop142;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop142:;
|
|
|
|
} // ( ... )*
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_declaration(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_declaration_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t144 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp139_AST_in = _t;
|
|
|
|
match(_t,ENTRY_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp140_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
discrete_subtype_def_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t144;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::rep_spec(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST rep_spec_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t150 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp141_AST_in = _t;
|
|
|
|
match(_t,RECORD_REPRESENTATION_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
align_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
comp_loc_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t150;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case AT_CLAUSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t151 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp142_AST_in = _t;
|
|
|
|
match(_t,AT_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t151;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t152 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp143_AST_in = _t;
|
|
|
|
match(_t,ATTRIBUTE_DEFINITION_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t152;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t153 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp144_AST_in = _t;
|
|
|
|
match(_t,ENUMERATION_REPESENTATION_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
local_enum_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
enumeration_aggregate(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t153;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discrete_subtype_def_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discrete_subtype_def_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t146 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp145_AST_in = _t;
|
|
|
|
match(_t,DISCRETE_SUBTYPE_DEF_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
case SUBTYPE_INDICATION:
|
|
|
|
{
|
|
|
|
discrete_subtype_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t146;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discrete_subtype_definition(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discrete_subtype_definition_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
{
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SUBTYPE_INDICATION:
|
|
|
|
{
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subtype_ind(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subtype_ind_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t221 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp146_AST_in = _t;
|
|
|
|
match(_t,SUBTYPE_INDICATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
constraint_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t221;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::align_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST align_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t155 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp147_AST_in = _t;
|
|
|
|
match(_t,MOD_CLAUSE_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t155;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::comp_loc_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST comp_loc_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t158 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp148_AST_in = _t;
|
|
|
|
match(_t,COMPONENT_CLAUSES_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
{
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop160;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop160:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t158;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::local_enum_name(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST local_enum_name_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp149_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::enumeration_aggregate(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST enumeration_aggregate_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_1.member(_t->getType()))) {
|
|
|
|
value(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop275;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop275:;
|
|
|
|
} // ( ... )*
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::protected_definition(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST protected_definition_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
prot_op_decl_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
prot_private_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prot_private_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prot_private_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t167 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp150_AST_in = _t;
|
|
|
|
match(_t,PROT_PRIVATE_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PROT_MEMBER_DECLARATIONS:
|
|
|
|
{
|
|
|
|
prot_member_decl_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t167;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prot_member_decl_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prot_member_decl_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t178 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp151_AST_in = _t;
|
|
|
|
match(_t,PROT_MEMBER_DECLARATIONS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENTRY_DECLARATION:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
prot_op_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case COMPONENT_DECLARATION:
|
|
|
|
{
|
|
|
|
comp_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop180;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop180:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t178;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prot_op_decl_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prot_op_decl_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t171 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp152_AST_in = _t;
|
|
|
|
match(_t,PROT_OP_DECLARATIONS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_3.member(_t->getType()))) {
|
|
|
|
prot_op_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop173;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop173:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t171;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prot_op_decl(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prot_op_decl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ENTRY_DECLARATION:
|
|
|
|
{
|
|
|
|
entry_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t175 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp153_AST_in = _t;
|
|
|
|
match(_t,PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t175;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t176 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp154_AST_in = _t;
|
|
|
|
match(_t,FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t176;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
{
|
|
|
|
rep_spec(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::comp_decl(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST comp_decl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t182 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp155_AST_in = _t;
|
|
|
|
match(_t,COMPONENT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
component_subtype_def(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
init_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t182;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::component_subtype_def(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST component_subtype_def_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::enum_id_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST enum_id_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt206=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == IDENTIFIER || _t->getType() == CHARACTER_LITERAL)) {
|
|
|
|
enumeration_literal_specification(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt206>=1 ) { goto _loop206; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt206++;
|
|
|
|
}
|
|
|
|
_loop206:;
|
|
|
|
} // ( ... )+
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::range_constraint_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST range_constraint_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case RANGE_CONSTRAINT:
|
|
|
|
{
|
|
|
|
range_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::array_type_declaration(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST array_type_declaration_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t212 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp156_AST_in = _t;
|
|
|
|
match(_t,ARRAY_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp157_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
array_type_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t212;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::access_type_declaration(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST access_type_declaration_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t245 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp158_AST_in = _t;
|
|
|
|
match(_t,ACCESS_TO_PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp159_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t245;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t246 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp160_AST_in = _t;
|
|
|
|
match(_t,ACCESS_TO_FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp161_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t246;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t247 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp162_AST_in = _t;
|
|
|
|
match(_t,ACCESS_TO_OBJECT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp163_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t247;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::id_and_discrim(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST id_and_discrim_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp164_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
discrim_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::record_definition(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST record_definition_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case COMPONENT_ITEMS:
|
|
|
|
{
|
|
|
|
component_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::array_type_definition(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST array_type_definition_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
index_or_discrete_range_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
component_subtype_def(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::enumeration_literal_specification(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST enumeration_literal_specification_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp165_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp166_AST_in = _t;
|
|
|
|
match(_t,CHARACTER_LITERAL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::index_or_discrete_range_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST index_or_discrete_range_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case RANGE:
|
|
|
|
case DOT_DOT:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case NOT:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
index_or_discrete_range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case COMMA:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t214 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp167_AST_in = _t;
|
|
|
|
match(_t,COMMA);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
index_or_discrete_range_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
index_or_discrete_range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t214;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::index_or_discrete_range(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST index_or_discrete_range_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t216 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp168_AST_in = _t;
|
|
|
|
match(_t,DOT_DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t216;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RANGE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t217 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp169_AST_in = _t;
|
|
|
|
match(_t,RANGE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case BOX:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp170_AST_in = _t;
|
|
|
|
match(_t,BOX);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
{
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t217;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case NOT:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::constraint_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST constraint_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case RANGE_CONSTRAINT:
|
|
|
|
{
|
|
|
|
range_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DIGITS_CONSTRAINT:
|
|
|
|
{
|
|
|
|
digits_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DELTA_CONSTRAINT:
|
|
|
|
{
|
|
|
|
delta_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case INDEX_CONSTRAINT:
|
|
|
|
{
|
|
|
|
index_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DISCRIMINANT_CONSTRAINT:
|
|
|
|
{
|
|
|
|
discriminant_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::digits_constraint(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST digits_constraint_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t225 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp171_AST_in = _t;
|
|
|
|
match(_t,DIGITS_CONSTRAINT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_constraint_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t225;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::delta_constraint(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST delta_constraint_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t227 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp172_AST_in = _t;
|
|
|
|
match(_t,DELTA_CONSTRAINT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_constraint_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t227;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::index_constraint(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST index_constraint_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t229 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp173_AST_in = _t;
|
|
|
|
match(_t,INDEX_CONSTRAINT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt231=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == DOT_DOT || _t->getType() == RANGE_ATTRIBUTE_REFERENCE || _t->getType() == SUBTYPE_INDICATION)) {
|
|
|
|
discrete_range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt231>=1 ) { goto _loop231; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt231++;
|
|
|
|
}
|
|
|
|
_loop231:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t229;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discriminant_constraint(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discriminant_constraint_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t234 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp174_AST_in = _t;
|
|
|
|
match(_t,DISCRIMINANT_CONSTRAINT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt236=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == DISCRIMINANT_ASSOCIATION)) {
|
|
|
|
discriminant_association(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt236>=1 ) { goto _loop236; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt236++;
|
|
|
|
}
|
|
|
|
_loop236:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t234;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discrete_range(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discrete_range_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
{
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SUBTYPE_INDICATION:
|
|
|
|
{
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discriminant_association(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discriminant_association_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t238 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp175_AST_in = _t;
|
|
|
|
match(_t,DISCRIMINANT_ASSOCIATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
selector_names_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t238;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::selector_names_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST selector_names_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t240 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp176_AST_in = _t;
|
|
|
|
match(_t,SELECTOR_NAMES_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == IDENTIFIER)) {
|
|
|
|
selector_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop242;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop242:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t240;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::selector_name(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST selector_name_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp177_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::component_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST component_list_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
component_items(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case VARIANT_PART:
|
|
|
|
{
|
|
|
|
variant_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::component_items(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST component_items_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t253 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp178_AST_in = _t;
|
|
|
|
match(_t,COMPONENT_ITEMS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case COMPONENT_DECLARATION:
|
|
|
|
{
|
|
|
|
comp_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop255;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop255:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t253;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::variant_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST variant_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t257 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp179_AST_in = _t;
|
|
|
|
match(_t,VARIANT_PART);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
discriminant_direct_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
variant_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t257;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discriminant_direct_name(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discriminant_direct_name_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp180_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::variant_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST variant_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t260 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp181_AST_in = _t;
|
|
|
|
match(_t,VARIANTS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt262=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == VARIANT)) {
|
|
|
|
variant(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt262>=1 ) { goto _loop262; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt262++;
|
|
|
|
}
|
|
|
|
_loop262:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t260;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::variant(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST variant_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t264 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp182_AST_in = _t;
|
|
|
|
match(_t,VARIANT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
choice_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case COMPONENT_ITEMS:
|
|
|
|
{
|
|
|
|
component_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t264;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::choice_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST choice_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PIPE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t267 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp183_AST_in = _t;
|
|
|
|
match(_t,PIPE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
choice_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
choice(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t267;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case OTHERS:
|
|
|
|
case DOT_DOT:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
case AND_THEN:
|
|
|
|
case MARK_WITH_CONSTRAINT:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
choice(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::choice(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST choice_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case OTHERS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp184_AST_in = _t;
|
|
|
|
match(_t,OTHERS);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
case MARK_WITH_CONSTRAINT:
|
|
|
|
{
|
|
|
|
discrete_with_range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::discrete_with_range(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST discrete_with_range_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case MARK_WITH_CONSTRAINT:
|
|
|
|
{
|
|
|
|
mark_with_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
{
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::mark_with_constraint(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST mark_with_constraint_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t271 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp185_AST_in = _t;
|
|
|
|
match(_t,MARK_WITH_CONSTRAINT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_constraint(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t271;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::generic_formal_part_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST generic_formal_part_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t284 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp186_AST_in = _t;
|
|
|
|
match(_t,GENERIC_FORMAL_PART);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case USE_CLAUSE:
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
{
|
|
|
|
use_clause(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_PACKAGE_DECLARATION:
|
|
|
|
case PARAMETER_SPECIFICATION:
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
case ARRAY_TYPE_DECLARATION:
|
|
|
|
case FORMAL_DECIMAL_FIXED_POINT_DECLARATION:
|
|
|
|
case FORMAL_DISCRETE_TYPE_DECLARATION:
|
|
|
|
case FORMAL_FLOATING_POINT_DECLARATION:
|
|
|
|
case FORMAL_FUNCTION_DECLARATION:
|
|
|
|
case FORMAL_MODULAR_TYPE_DECLARATION:
|
|
|
|
case FORMAL_ORDINARY_DERIVED_TYPE_DECLARATION:
|
|
|
|
case FORMAL_ORDINARY_FIXED_POINT_DECLARATION:
|
|
|
|
case FORMAL_PRIVATE_EXTENSION_DECLARATION:
|
|
|
|
case FORMAL_PRIVATE_TYPE_DECLARATION:
|
|
|
|
case FORMAL_PROCEDURE_DECLARATION:
|
|
|
|
case FORMAL_SIGNED_INTEGER_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
generic_formal_parameter(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop286;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop286:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t284;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::generic_formal_parameter(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST generic_formal_parameter_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case FORMAL_DISCRETE_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t288 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp187_AST_in = _t;
|
|
|
|
match(_t,FORMAL_DISCRETE_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t288;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_SIGNED_INTEGER_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t289 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp188_AST_in = _t;
|
|
|
|
match(_t,FORMAL_SIGNED_INTEGER_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t289;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_MODULAR_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t290 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp189_AST_in = _t;
|
|
|
|
match(_t,FORMAL_MODULAR_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t290;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_DECIMAL_FIXED_POINT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t291 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp190_AST_in = _t;
|
|
|
|
match(_t,FORMAL_DECIMAL_FIXED_POINT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t291;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_ORDINARY_FIXED_POINT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t292 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp191_AST_in = _t;
|
|
|
|
match(_t,FORMAL_ORDINARY_FIXED_POINT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t292;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_FLOATING_POINT_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t293 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp192_AST_in = _t;
|
|
|
|
match(_t,FORMAL_FLOATING_POINT_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t293;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ARRAY_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
formal_array_type_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
formal_access_type_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_PRIVATE_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t294 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp193_AST_in = _t;
|
|
|
|
match(_t,FORMAL_PRIVATE_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t294;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_ORDINARY_DERIVED_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t295 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp194_AST_in = _t;
|
|
|
|
match(_t,FORMAL_ORDINARY_DERIVED_TYPE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t295;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_PRIVATE_EXTENSION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t296 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp195_AST_in = _t;
|
|
|
|
match(_t,FORMAL_PRIVATE_EXTENSION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
id_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subtype_ind(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t296;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t297 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp196_AST_in = _t;
|
|
|
|
match(_t,FORMAL_PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subprogram_default_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t297;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t298 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp197_AST_in = _t;
|
|
|
|
match(_t,FORMAL_FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
subprogram_default_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t298;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FORMAL_PACKAGE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t299 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp198_AST_in = _t;
|
|
|
|
match(_t,FORMAL_PACKAGE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_package_actual_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t299;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PARAMETER_SPECIFICATION:
|
|
|
|
{
|
|
|
|
parameter_specification(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::formal_array_type_declaration(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST formal_array_type_declaration_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
array_type_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::formal_access_type_declaration(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST formal_access_type_declaration_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
access_type_declaration(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::id_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST id_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
discrim_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subprogram_default_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subprogram_default_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case BOX:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp199_AST_in = _t;
|
|
|
|
match(_t,BOX);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
{
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::formal_package_actual_part_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST formal_package_actual_part_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case BOX:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp200_AST_in = _t;
|
|
|
|
match(_t,BOX);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DEFINING_IDENTIFIER_LIST:
|
|
|
|
{
|
|
|
|
defining_identifier_list(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::procedure_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST procedure_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t309 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp201_AST_in = _t;
|
|
|
|
match(_t,PROCEDURE_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t309;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::function_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST function_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t311 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp202_AST_in = _t;
|
|
|
|
match(_t,FUNCTION_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t311;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::body_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST body_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
declarative_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
block_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::declarative_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST declarative_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t314 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp203_AST_in = _t;
|
|
|
|
match(_t,DECLARATIVE_PART);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case EXCEPTION_DECLARATION:
|
|
|
|
case EXCEPTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_PACKAGE_DECLARATION:
|
|
|
|
case INCOMPLETE_TYPE_DECLARATION:
|
|
|
|
case NUMBER_DECLARATION:
|
|
|
|
case OBJECT_DECLARATION:
|
|
|
|
case OBJECT_RENAMING_DECLARATION:
|
|
|
|
case PACKAGE_BODY:
|
|
|
|
case PACKAGE_BODY_STUB:
|
|
|
|
case PACKAGE_RENAMING_DECLARATION:
|
|
|
|
case PACKAGE_SPECIFICATION:
|
|
|
|
case PRIVATE_EXTENSION_DECLARATION:
|
|
|
|
case PRIVATE_TYPE_DECLARATION:
|
|
|
|
case PROTECTED_BODY:
|
|
|
|
case PROTECTED_BODY_STUB:
|
|
|
|
case PROTECTED_TYPE_DECLARATION:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
case SINGLE_PROTECTED_DECLARATION:
|
|
|
|
case SINGLE_TASK_DECLARATION:
|
|
|
|
case SUBTYPE_DECLARATION:
|
|
|
|
case TASK_BODY:
|
|
|
|
case TASK_BODY_STUB:
|
|
|
|
case TASK_TYPE_DECLARATION:
|
|
|
|
case USE_CLAUSE:
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
case ABSTRACT_FUNCTION_DECLARATION:
|
|
|
|
case ABSTRACT_PROCEDURE_DECLARATION:
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
case ARRAY_OBJECT_DECLARATION:
|
|
|
|
case ARRAY_TYPE_DECLARATION:
|
|
|
|
case DECIMAL_FIXED_POINT_DECLARATION:
|
|
|
|
case DERIVED_RECORD_EXTENSION:
|
|
|
|
case ENUMERATION_TYPE_DECLARATION:
|
|
|
|
case FLOATING_POINT_DECLARATION:
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
case FUNCTION_BODY_STUB:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case FUNCTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_INSTANTIATION:
|
|
|
|
case GENERIC_FUNCTION_RENAMING:
|
|
|
|
case GENERIC_PACKAGE_INSTANTIATION:
|
|
|
|
case GENERIC_PACKAGE_RENAMING:
|
|
|
|
case GENERIC_PROCEDURE_DECLARATION:
|
|
|
|
case GENERIC_PROCEDURE_INSTANTIATION:
|
|
|
|
case GENERIC_PROCEDURE_RENAMING:
|
|
|
|
case MODULAR_TYPE_DECLARATION:
|
|
|
|
case ORDINARY_DERIVED_TYPE_DECLARATION:
|
|
|
|
case ORDINARY_FIXED_POINT_DECLARATION:
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
case PROCEDURE_BODY_STUB:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
case PROCEDURE_RENAMING_DECLARATION:
|
|
|
|
case RECORD_TYPE_DECLARATION:
|
|
|
|
case SIGNED_INTEGER_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
declarative_item(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop316;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop316:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t314;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::block_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST block_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t336 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp204_AST_in = _t;
|
|
|
|
match(_t,BLOCK_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
handled_stmt_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t336;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::declarative_item(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST declarative_item_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PACKAGE_BODY_STUB:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t318 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp205_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_BODY_STUB);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t318;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_BODY:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t319 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp206_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
pkg_body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t319;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PACKAGE_RENAMING_DECLARATION:
|
|
|
|
case PACKAGE_SPECIFICATION:
|
|
|
|
case GENERIC_PACKAGE_INSTANTIATION:
|
|
|
|
{
|
|
|
|
spec_decl_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TASK_BODY_STUB:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t320 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp207_AST_in = _t;
|
|
|
|
match(_t,TASK_BODY_STUB);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t320;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TASK_BODY:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t321 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp208_AST_in = _t;
|
|
|
|
match(_t,TASK_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t321;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SINGLE_TASK_DECLARATION:
|
|
|
|
case TASK_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
task_type_or_single_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROTECTED_BODY_STUB:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t322 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp209_AST_in = _t;
|
|
|
|
match(_t,PROTECTED_BODY_STUB);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t322;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROTECTED_BODY:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t323 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp210_AST_in = _t;
|
|
|
|
match(_t,PROTECTED_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
prot_op_bodies_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t323;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROTECTED_TYPE_DECLARATION:
|
|
|
|
case SINGLE_PROTECTED_DECLARATION:
|
|
|
|
{
|
|
|
|
prot_type_or_single_decl(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ABSTRACT_FUNCTION_DECLARATION:
|
|
|
|
case ABSTRACT_PROCEDURE_DECLARATION:
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
case FUNCTION_BODY_STUB:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case FUNCTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_INSTANTIATION:
|
|
|
|
case GENERIC_PROCEDURE_INSTANTIATION:
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
case PROCEDURE_BODY_STUB:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
case PROCEDURE_RENAMING_DECLARATION:
|
|
|
|
{
|
|
|
|
subprog_decl_or_rename_or_inst_or_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ATTRIBUTE_DEFINITION_CLAUSE:
|
|
|
|
case AT_CLAUSE:
|
|
|
|
case ENUMERATION_REPESENTATION_CLAUSE:
|
|
|
|
case EXCEPTION_DECLARATION:
|
|
|
|
case EXCEPTION_RENAMING_DECLARATION:
|
|
|
|
case GENERIC_PACKAGE_DECLARATION:
|
|
|
|
case INCOMPLETE_TYPE_DECLARATION:
|
|
|
|
case NUMBER_DECLARATION:
|
|
|
|
case OBJECT_DECLARATION:
|
|
|
|
case OBJECT_RENAMING_DECLARATION:
|
|
|
|
case PRIVATE_EXTENSION_DECLARATION:
|
|
|
|
case PRIVATE_TYPE_DECLARATION:
|
|
|
|
case RECORD_REPRESENTATION_CLAUSE:
|
|
|
|
case SUBTYPE_DECLARATION:
|
|
|
|
case USE_CLAUSE:
|
|
|
|
case USE_TYPE_CLAUSE:
|
|
|
|
case ACCESS_TO_FUNCTION_DECLARATION:
|
|
|
|
case ACCESS_TO_OBJECT_DECLARATION:
|
|
|
|
case ACCESS_TO_PROCEDURE_DECLARATION:
|
|
|
|
case ARRAY_OBJECT_DECLARATION:
|
|
|
|
case ARRAY_TYPE_DECLARATION:
|
|
|
|
case DECIMAL_FIXED_POINT_DECLARATION:
|
|
|
|
case DERIVED_RECORD_EXTENSION:
|
|
|
|
case ENUMERATION_TYPE_DECLARATION:
|
|
|
|
case FLOATING_POINT_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_DECLARATION:
|
|
|
|
case GENERIC_FUNCTION_RENAMING:
|
|
|
|
case GENERIC_PACKAGE_RENAMING:
|
|
|
|
case GENERIC_PROCEDURE_DECLARATION:
|
|
|
|
case GENERIC_PROCEDURE_RENAMING:
|
|
|
|
case MODULAR_TYPE_DECLARATION:
|
|
|
|
case ORDINARY_DERIVED_TYPE_DECLARATION:
|
|
|
|
case ORDINARY_FIXED_POINT_DECLARATION:
|
|
|
|
case RECORD_TYPE_DECLARATION:
|
|
|
|
case SIGNED_INTEGER_TYPE_DECLARATION:
|
|
|
|
{
|
|
|
|
decl_common(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::prot_op_bodies_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST prot_op_bodies_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t329 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp211_AST_in = _t;
|
|
|
|
match(_t,PROT_OP_BODIES_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ENTRY_BODY:
|
|
|
|
{
|
|
|
|
entry_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
subprog_decl_or_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop331;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop331:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t329;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::block_body_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST block_body_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t326 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp212_AST_in = _t;
|
|
|
|
match(_t,BLOCK_BODY_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case HANDLED_SEQUENCE_OF_STATEMENTS:
|
|
|
|
{
|
|
|
|
handled_stmt_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t326;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::handled_stmt_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST handled_stmt_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t338 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp213_AST_in = _t;
|
|
|
|
match(_t,HANDLED_SEQUENCE_OF_STATEMENTS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
except_handler_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t338;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t398 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp214_AST_in = _t;
|
|
|
|
match(_t,ENTRY_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
entry_body_formal_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
entry_barrier(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t398;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subprog_decl_or_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subprog_decl_or_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
{
|
|
|
|
procedure_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PROCEDURE_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t333 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp215_AST_in = _t;
|
|
|
|
match(_t,PROCEDURE_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t333;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
{
|
|
|
|
function_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_DECLARATION:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t334 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp216_AST_in = _t;
|
|
|
|
match(_t,FUNCTION_DECLARATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_designator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
function_tail(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t334;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST statements_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t343 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp217_AST_in = _t;
|
|
|
|
match(_t,SEQUENCE_OF_STATEMENTS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt345=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case STATEMENT:
|
|
|
|
{
|
|
|
|
statement(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
if ( _cnt345>=1 ) { goto _loop345; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_cnt345++;
|
|
|
|
}
|
|
|
|
_loop345:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t343;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::except_handler_part_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST except_handler_part_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t448 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp218_AST_in = _t;
|
|
|
|
match(_t,EXCEPT_HANDLER_PART_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == EXCEPTION_HANDLER)) {
|
|
|
|
exception_handler(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop450;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop450:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t448;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::handled_stmts_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST handled_stmts_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t340 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp219_AST_in = _t;
|
|
|
|
match(_t,HANDLED_STMTS_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case SEQUENCE_OF_STATEMENTS:
|
|
|
|
{
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
except_handler_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t340;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::statement(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST statement_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t347 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp220_AST_in = _t;
|
|
|
|
match(_t,STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_label_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case NULL_STATEMENT:
|
|
|
|
{
|
|
|
|
null_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case EXIT_STATEMENT:
|
|
|
|
{
|
|
|
|
exit_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RETURN_STATEMENT:
|
|
|
|
{
|
|
|
|
return_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GOTO_STATEMENT:
|
|
|
|
{
|
|
|
|
goto_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DELAY_STATEMENT:
|
|
|
|
{
|
|
|
|
delay_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ABORT_STATEMENT:
|
|
|
|
{
|
|
|
|
abort_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case RAISE_STATEMENT:
|
|
|
|
{
|
|
|
|
raise_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case REQUEUE_STATEMENT:
|
|
|
|
{
|
|
|
|
requeue_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ACCEPT_STATEMENT:
|
|
|
|
{
|
|
|
|
accept_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ASYNCHRONOUS_SELECT:
|
|
|
|
case CONDITIONAL_ENTRY_CALL:
|
|
|
|
case SELECTIVE_ACCEPT:
|
|
|
|
case TIMED_ENTRY_CALL:
|
|
|
|
{
|
|
|
|
select_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IF_STATEMENT:
|
|
|
|
{
|
|
|
|
if_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CASE_STATEMENT:
|
|
|
|
{
|
|
|
|
case_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case LOOP_STATEMENT:
|
|
|
|
{
|
|
|
|
loop_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case BLOCK_STATEMENT:
|
|
|
|
{
|
|
|
|
block(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ASSIGNMENT_STATEMENT:
|
|
|
|
case CALL_STATEMENT:
|
|
|
|
{
|
|
|
|
call_or_assignment(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t347;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::def_label_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST def_label_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t350 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp221_AST_in = _t;
|
|
|
|
match(_t,LABEL_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp222_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t350;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::null_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST null_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp223_AST_in = _t;
|
|
|
|
match(_t,NULL_STATEMENT);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::exit_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST exit_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t385 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp224_AST_in = _t;
|
|
|
|
match(_t,EXIT_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
label_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
case WHEN:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case WHEN:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp225_AST_in = _t;
|
|
|
|
match(_t,WHEN);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
condition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t385;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::return_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST return_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t390 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp226_AST_in = _t;
|
|
|
|
match(_t,RETURN_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t390;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::goto_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST goto_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t393 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp227_AST_in = _t;
|
|
|
|
match(_t,GOTO_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
label_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t393;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::delay_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST delay_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t412 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp228_AST_in = _t;
|
|
|
|
match(_t,DELAY_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t412;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::abort_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST abort_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t444 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp229_AST_in = _t;
|
|
|
|
match(_t,ABORT_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt446=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_tokenSet_4.member(_t->getType()))) {
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt446>=1 ) { goto _loop446; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt446++;
|
|
|
|
}
|
|
|
|
_loop446:;
|
|
|
|
} // ( ... )+
|
|
|
|
_t = __t444;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::raise_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST raise_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t460 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp230_AST_in = _t;
|
|
|
|
match(_t,RAISE_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t460;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::requeue_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST requeue_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t463 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp231_AST_in = _t;
|
|
|
|
match(_t,REQUEUE_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ABORT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp232_AST_in = _t;
|
|
|
|
match(_t,ABORT);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t463;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::accept_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST accept_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t407 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp233_AST_in = _t;
|
|
|
|
match(_t,ACCEPT_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
entry_index_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
handled_stmts_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
end_id_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t407;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::select_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST select_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ASYNCHRONOUS_SELECT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t414 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp234_AST_in = _t;
|
|
|
|
match(_t,ASYNCHRONOUS_SELECT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
triggering_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
abortable_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t414;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case SELECTIVE_ACCEPT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t415 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp235_AST_in = _t;
|
|
|
|
match(_t,SELECTIVE_ACCEPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
selective_accept(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t415;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TIMED_ENTRY_CALL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t416 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp236_AST_in = _t;
|
|
|
|
match(_t,TIMED_ENTRY_CALL);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
entry_call_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
delay_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t416;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CONDITIONAL_ENTRY_CALL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t417 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp237_AST_in = _t;
|
|
|
|
match(_t,CONDITIONAL_ENTRY_CALL);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
entry_call_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t417;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::if_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST if_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t354 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp238_AST_in = _t;
|
|
|
|
match(_t,IF_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
cond_clause(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
elsifs_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
else_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t354;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::case_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST case_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t366 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp239_AST_in = _t;
|
|
|
|
match(_t,CASE_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
alternative_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t366;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::loop_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST loop_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t373 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp240_AST_in = _t;
|
|
|
|
match(_t,LOOP_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
iteration_scheme_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t373;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::block(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST block_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t380 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp241_AST_in = _t;
|
|
|
|
match(_t,BLOCK_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
declare_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
block_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t380;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::call_or_assignment(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST call_or_assignment_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ASSIGNMENT_STATEMENT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t395 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp242_AST_in = _t;
|
|
|
|
match(_t,ASSIGNMENT_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t395;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CALL_STATEMENT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t396 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp243_AST_in = _t;
|
|
|
|
match(_t,CALL_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t396;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::cond_clause(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST cond_clause_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t356 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp244_AST_in = _t;
|
|
|
|
match(_t,COND_CLAUSE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
condition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t356;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::elsifs_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST elsifs_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t359 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp245_AST_in = _t;
|
|
|
|
match(_t,ELSIFS_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == COND_CLAUSE)) {
|
|
|
|
cond_clause(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop361;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop361:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t359;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::else_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST else_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t363 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp246_AST_in = _t;
|
|
|
|
match(_t,ELSE_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case SEQUENCE_OF_STATEMENTS:
|
|
|
|
{
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t363;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::condition(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST condition_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::alternative_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST alternative_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{ // ( ... )+
|
|
|
|
int _cnt369=0;
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == CASE_STATEMENT_ALTERNATIVE)) {
|
|
|
|
case_statement_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if ( _cnt369>=1 ) { goto _loop369; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);}
|
|
|
|
}
|
|
|
|
|
|
|
|
_cnt369++;
|
|
|
|
}
|
|
|
|
_loop369:;
|
|
|
|
} // ( ... )+
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::case_statement_alternative(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST case_statement_alternative_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t371 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp247_AST_in = _t;
|
|
|
|
match(_t,CASE_STATEMENT_ALTERNATIVE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
choice_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t371;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::iteration_scheme_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST iteration_scheme_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t375 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp248_AST_in = _t;
|
|
|
|
match(_t,ITERATION_SCHEME_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case WHILE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t377 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp249_AST_in = _t;
|
|
|
|
match(_t,WHILE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
condition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t377;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FOR:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t378 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp250_AST_in = _t;
|
|
|
|
match(_t,FOR);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp251_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
modifiers(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
discrete_subtype_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t378;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t375;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::declare_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST declare_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t382 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp252_AST_in = _t;
|
|
|
|
match(_t,DECLARE_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DECLARATIVE_PART:
|
|
|
|
{
|
|
|
|
declarative_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t382;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::label_name(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST label_name_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp253_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_body_formal_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_body_formal_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
entry_index_spec_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
formal_part_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_barrier(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_barrier_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
condition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_index_spec_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_index_spec_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t401 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp254_AST_in = _t;
|
|
|
|
match(_t,ENTRY_INDEX_SPECIFICATION);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
discrete_subtype_definition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t401;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_call_stmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_call_stmt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t405 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp255_AST_in = _t;
|
|
|
|
match(_t,ENTRY_CALL_STATEMENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t405;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_index_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_index_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t409 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp256_AST_in = _t;
|
|
|
|
match(_t,ENTRY_INDEX_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t409;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::triggering_alternative(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST triggering_alternative_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t419 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp257_AST_in = _t;
|
|
|
|
match(_t,TRIGGERING_ALTERNATIVE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DELAY_STATEMENT:
|
|
|
|
{
|
|
|
|
delay_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ENTRY_CALL_STATEMENT:
|
|
|
|
{
|
|
|
|
entry_call_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
stmts_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t419;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::abortable_part(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST abortable_part_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t422 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp258_AST_in = _t;
|
|
|
|
match(_t,ABORTABLE_PART);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
stmts_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t422;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::selective_accept(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST selective_accept_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
guard_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
select_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
or_select_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
else_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::entry_call_alternative(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST entry_call_alternative_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t424 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp259_AST_in = _t;
|
|
|
|
match(_t,ENTRY_CALL_ALTERNATIVE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
entry_call_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
stmts_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t424;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::delay_alternative(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST delay_alternative_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t435 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp260_AST_in = _t;
|
|
|
|
match(_t,DELAY_ALTERNATIVE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
delay_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
stmts_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t435;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::stmts_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST stmts_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PRAGMA:
|
|
|
|
{
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case STATEMENT:
|
|
|
|
{
|
|
|
|
statement(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
goto _loop438;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_loop438:;
|
|
|
|
} // ( ... )*
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::guard_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST guard_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t427 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp261_AST_in = _t;
|
|
|
|
match(_t,GUARD_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case IN:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case OR:
|
|
|
|
case AND:
|
|
|
|
case XOR:
|
|
|
|
case NOT:
|
|
|
|
case EQ:
|
|
|
|
case NE:
|
|
|
|
case LT_:
|
|
|
|
case LE:
|
|
|
|
case GT:
|
|
|
|
case GE:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case AND_THEN:
|
|
|
|
case NOT_IN:
|
|
|
|
case OR_ELSE:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
condition(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == PRAGMA)) {
|
|
|
|
pragma(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop430;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop430:;
|
|
|
|
} // ( ... )*
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t427;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::select_alternative(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST select_alternative_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ACCEPT_ALTERNATIVE:
|
|
|
|
{
|
|
|
|
accept_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DELAY_ALTERNATIVE:
|
|
|
|
{
|
|
|
|
delay_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TERMINATE_ALTERNATIVE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp262_AST_in = _t;
|
|
|
|
match(_t,TERMINATE_ALTERNATIVE);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::or_select_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST or_select_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t440 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp263_AST_in = _t;
|
|
|
|
match(_t,OR_SELECT_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{ // ( ... )*
|
|
|
|
for (;;) {
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
if ((_t->getType() == GUARD_OPT)) {
|
|
|
|
guard_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
select_alternative(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
goto _loop442;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
_loop442:;
|
|
|
|
} // ( ... )*
|
|
|
|
_t = __t440;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::accept_alternative(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST accept_alternative_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t433 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp264_AST_in = _t;
|
|
|
|
match(_t,ACCEPT_ALTERNATIVE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
accept_stmt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
stmts_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t433;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::exception_handler(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST exception_handler_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t452 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp265_AST_in = _t;
|
|
|
|
match(_t,EXCEPTION_HANDLER);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
identifier_colon_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
except_choice_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
statements(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t452;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::identifier_colon_opt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST identifier_colon_opt_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t454 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp266_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER_COLON_OPT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp267_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 3:
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t454;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::except_choice_s(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST except_choice_s_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PIPE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t457 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp268_AST_in = _t;
|
|
|
|
match(_t,PIPE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
except_choice_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
exception_choice(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t457;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case OTHERS:
|
|
|
|
{
|
|
|
|
exception_choice(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::exception_choice(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST exception_choice_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
compound_name(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OTHERS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp269_AST_in = _t;
|
|
|
|
match(_t,OTHERS);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::operator_call(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST operator_call_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t466 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp270_AST_in = _t;
|
|
|
|
match(_t,OPERATOR_SYMBOL);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t466;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::relation(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST relation_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IN:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t478 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp271_AST_in = _t;
|
|
|
|
match(_t,IN);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_or_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t478;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case NOT_IN:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t479 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp272_AST_in = _t;
|
|
|
|
match(_t,NOT_IN);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
range_or_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t479;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case EQ:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t480 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp273_AST_in = _t;
|
|
|
|
match(_t,EQ);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t480;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case NE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t481 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp274_AST_in = _t;
|
|
|
|
match(_t,NE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t481;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case LT_:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t482 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp275_AST_in = _t;
|
|
|
|
match(_t,LT_);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t482;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case LE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t483 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp276_AST_in = _t;
|
|
|
|
match(_t,LE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t483;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t484 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp277_AST_in = _t;
|
|
|
|
match(_t,GT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t484;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case GE:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t485 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp278_AST_in = _t;
|
|
|
|
match(_t,GE);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t485;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case NOT:
|
|
|
|
case PLUS:
|
|
|
|
case MINUS:
|
|
|
|
case CONCAT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
case UNARY_MINUS:
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
simple_expression(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::range_or_mark(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST range_or_mark_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case DOT_DOT:
|
|
|
|
case RANGE_ATTRIBUTE_REFERENCE:
|
|
|
|
{
|
|
|
|
range(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
{
|
|
|
|
subtype_mark(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::signed_term(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST signed_term_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case UNARY_PLUS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t492 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp279_AST_in = _t;
|
|
|
|
match(_t,UNARY_PLUS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t492;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case UNARY_MINUS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t493 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp280_AST_in = _t;
|
|
|
|
match(_t,UNARY_MINUS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t493;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case MOD:
|
|
|
|
case NOT:
|
|
|
|
case STAR:
|
|
|
|
case DIV:
|
|
|
|
case REM:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
{
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::term(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST term_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case STAR:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t495 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp281_AST_in = _t;
|
|
|
|
match(_t,STAR);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
factor(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t495;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DIV:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t496 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp282_AST_in = _t;
|
|
|
|
match(_t,DIV);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
factor(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t496;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case MOD:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t497 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp283_AST_in = _t;
|
|
|
|
match(_t,MOD);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
factor(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t497;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case REM:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t498 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp284_AST_in = _t;
|
|
|
|
match(_t,REM);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
term(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
factor(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t498;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case NOT:
|
|
|
|
case ABS:
|
|
|
|
case EXPON:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
{
|
|
|
|
factor(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::factor(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST factor_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case NOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t500 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp285_AST_in = _t;
|
|
|
|
match(_t,NOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t500;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ABS:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t501 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp286_AST_in = _t;
|
|
|
|
match(_t,ABS);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t501;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case EXPON:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t502 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp287_AST_in = _t;
|
|
|
|
match(_t,EXPON);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t502;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
case CHAR_STRING:
|
|
|
|
case NuLL:
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
case ALLOCATOR:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
{
|
|
|
|
primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::primary(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST primary_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
case DOT:
|
|
|
|
case TIC:
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
{
|
|
|
|
name_or_qualified(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
{
|
|
|
|
parenthesized_primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case ALLOCATOR:
|
|
|
|
{
|
|
|
|
allocator(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case NuLL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp288_AST_in = _t;
|
|
|
|
match(_t,NuLL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case NUMERIC_LIT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp289_AST_in = _t;
|
|
|
|
match(_t,NUMERIC_LIT);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp290_AST_in = _t;
|
|
|
|
match(_t,CHARACTER_LITERAL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CHAR_STRING:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp291_AST_in = _t;
|
|
|
|
match(_t,CHAR_STRING);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
operator_call(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::name_or_qualified(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST name_or_qualified_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp292_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case DOT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t506 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp293_AST_in = _t;
|
|
|
|
match(_t,DOT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name_or_qualified(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case ALL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp294_AST_in = _t;
|
|
|
|
match(_t,ALL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp295_AST_in = _t;
|
|
|
|
match(_t,IDENTIFIER);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case CHARACTER_LITERAL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp296_AST_in = _t;
|
|
|
|
match(_t,CHARACTER_LITERAL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case OPERATOR_SYMBOL:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp297_AST_in = _t;
|
|
|
|
match(_t,OPERATOR_SYMBOL);
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t506;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case INDEXED_COMPONENT:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t508 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp298_AST_in = _t;
|
|
|
|
match(_t,INDEXED_COMPONENT);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name_or_qualified(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
value_s(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t508;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case TIC:
|
|
|
|
{
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t509 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp299_AST_in = _t;
|
|
|
|
match(_t,TIC);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name_or_qualified(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
{
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PARENTHESIZED_PRIMARY:
|
|
|
|
{
|
|
|
|
parenthesized_primary(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case IDENTIFIER:
|
|
|
|
case RANGE:
|
|
|
|
case DIGITS:
|
|
|
|
case DELTA:
|
|
|
|
case ACCESS:
|
|
|
|
{
|
|
|
|
attribute_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_t = __t509;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::allocator(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST allocator_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t512 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp300_AST_in = _t;
|
|
|
|
match(_t,ALLOCATOR);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
name_or_qualified(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t512;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::subprogram_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST subprogram_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
if (_t == ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = ASTNULL;
|
|
|
|
switch ( _t->getType()) {
|
|
|
|
case PROCEDURE_BODY:
|
|
|
|
{
|
|
|
|
procedure_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case FUNCTION_BODY:
|
|
|
|
{
|
|
|
|
function_body(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(_t);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::package_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST package_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t518 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp301_AST_in = _t;
|
|
|
|
match(_t,PACKAGE_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
pkg_body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t518;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::task_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST task_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t520 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp302_AST_in = _t;
|
|
|
|
match(_t,TASK_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
body_part(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t520;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::protected_body(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST protected_body_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
|
|
|
|
|
|
|
|
try { // for error handling
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST __t522 = _t;
|
|
|
|
ANTLR_USE_NAMESPACE(antlr)RefAST tmp303_AST_in = _t;
|
|
|
|
match(_t,PROTECTED_BODY);
|
|
|
|
_t = _t->getFirstChild();
|
|
|
|
def_id(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
prot_op_bodies_opt(_t);
|
|
|
|
_t = _retTree;
|
|
|
|
_t = __t522;
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
|
|
|
|
reportError(ex);
|
|
|
|
if ( _t != ANTLR_USE_NAMESPACE(antlr)nullAST )
|
|
|
|
_t = _t->getNextSibling();
|
|
|
|
}
|
|
|
|
_retTree = _t;
|
|
|
|
}
|
|
|
|
|
|
|
|
void AdaTreeParserSuper::initializeASTFactory( ANTLR_USE_NAMESPACE(antlr)ASTFactory& )
|
|
|
|
{
|
|
|
|
}
|
|
|
|
const char* AdaTreeParserSuper::tokenNames[] = {
|
|
|
|
"<0>",
|
|
|
|
"EOF",
|
|
|
|
"<2>",
|
|
|
|
"NULL_TREE_LOOKAHEAD",
|
|
|
|
"\"pragma\"",
|
|
|
|
"IDENTIFIER",
|
|
|
|
"SEMI",
|
|
|
|
"LPAREN",
|
|
|
|
"COMMA",
|
|
|
|
"RPAREN",
|
|
|
|
"RIGHT_SHAFT",
|
|
|
|
"\"with\"",
|
|
|
|
"DOT",
|
|
|
|
"\"use\"",
|
|
|
|
"\"type\"",
|
|
|
|
"TIC",
|
|
|
|
"\"range\"",
|
|
|
|
"\"digits\"",
|
|
|
|
"\"delta\"",
|
|
|
|
"\"access\"",
|
|
|
|
"\"private\"",
|
|
|
|
"\"package\"",
|
|
|
|
"\"body\"",
|
|
|
|
"\"is\"",
|
|
|
|
"\"procedure\"",
|
|
|
|
"\"function\"",
|
|
|
|
"\"new\"",
|
|
|
|
"\"others\"",
|
|
|
|
"PIPE",
|
|
|
|
"DOT_DOT",
|
|
|
|
"\"all\"",
|
|
|
|
"COLON",
|
|
|
|
"\"in\"",
|
|
|
|
"\"out\"",
|
|
|
|
"\"renames\"",
|
|
|
|
"CHARACTER_LITERAL",
|
|
|
|
"CHAR_STRING",
|
|
|
|
"\"null\"",
|
|
|
|
"\"record\"",
|
|
|
|
"\"separate\"",
|
|
|
|
"\"abstract\"",
|
|
|
|
"\"return\"",
|
|
|
|
"\"task\"",
|
|
|
|
"\"protected\"",
|
|
|
|
"BOX",
|
|
|
|
"ASSIGN",
|
|
|
|
"\"entry\"",
|
|
|
|
"\"for\"",
|
|
|
|
"\"end\"",
|
|
|
|
"\"at\"",
|
|
|
|
"\"mod\"",
|
|
|
|
"\"subtype\"",
|
|
|
|
"\"exception\"",
|
|
|
|
"\"constant\"",
|
|
|
|
"\"array\"",
|
|
|
|
"\"of\"",
|
|
|
|
"\"aliased\"",
|
|
|
|
"\"case\"",
|
|
|
|
"\"when\"",
|
|
|
|
"\"tagged\"",
|
|
|
|
"\"limited\"",
|
|
|
|
"\"generic\"",
|
|
|
|
"\"begin\"",
|
|
|
|
"LT_LT",
|
|
|
|
"GT_GT",
|
|
|
|
"\"if\"",
|
|
|
|
"\"then\"",
|
|
|
|
"\"elsif\"",
|
|
|
|
"\"else\"",
|
|
|
|
"\"loop\"",
|
|
|
|
"\"while\"",
|
|
|
|
"\"reverse\"",
|
|
|
|
"\"declare\"",
|
|
|
|
"\"exit\"",
|
|
|
|
"\"goto\"",
|
|
|
|
"\"accept\"",
|
|
|
|
"\"do\"",
|
|
|
|
"\"delay\"",
|
|
|
|
"\"until\"",
|
|
|
|
"\"select\"",
|
|
|
|
"\"abort\"",
|
|
|
|
"\"or\"",
|
|
|
|
"\"terminate\"",
|
|
|
|
"\"raise\"",
|
|
|
|
"\"requeue\"",
|
|
|
|
"\"and\"",
|
|
|
|
"\"xor\"",
|
|
|
|
"\"not\"",
|
|
|
|
"EQ",
|
|
|
|
"NE",
|
|
|
|
"LT_",
|
|
|
|
"LE",
|
|
|
|
"GT",
|
|
|
|
"GE",
|
|
|
|
"PLUS",
|
|
|
|
"MINUS",
|
|
|
|
"CONCAT",
|
|
|
|
"STAR",
|
|
|
|
"DIV",
|
|
|
|
"\"rem\"",
|
|
|
|
"\"abs\"",
|
|
|
|
"EXPON",
|
|
|
|
"NUMERIC_LIT",
|
|
|
|
"ABORTABLE_PART",
|
|
|
|
"ABORT_STATEMENT",
|
|
|
|
"ACCEPT_ALTERNATIVE",
|
|
|
|
"ACCEPT_STATEMENT",
|
|
|
|
"ALLOCATOR",
|
|
|
|
"ASSIGNMENT_STATEMENT",
|
|
|
|
"ASYNCHRONOUS_SELECT",
|
|
|
|
"ATTRIBUTE_DEFINITION_CLAUSE",
|
|
|
|
"AT_CLAUSE",
|
|
|
|
"BLOCK_STATEMENT",
|
|
|
|
"CASE_STATEMENT",
|
|
|
|
"CASE_STATEMENT_ALTERNATIVE",
|
|
|
|
"CODE_STATEMENT",
|
|
|
|
"COMPONENT_DECLARATION",
|
|
|
|
"CONDITIONAL_ENTRY_CALL",
|
|
|
|
"CONTEXT_CLAUSE",
|
|
|
|
"DECLARATIVE_PART",
|
|
|
|
"DEFINING_IDENTIFIER_LIST",
|
|
|
|
"DELAY_ALTERNATIVE",
|
|
|
|
"DELAY_STATEMENT",
|
|
|
|
"DELTA_CONSTRAINT",
|
|
|
|
"DIGITS_CONSTRAINT",
|
|
|
|
"DISCRIMINANT_ASSOCIATION",
|
|
|
|
"DISCRIMINANT_CONSTRAINT",
|
|
|
|
"DISCRIMINANT_SPECIFICATION",
|
|
|
|
"ENTRY_BODY",
|
|
|
|
"ENTRY_CALL_ALTERNATIVE",
|
|
|
|
"ENTRY_CALL_STATEMENT",
|
|
|
|
"ENTRY_DECLARATION",
|
|
|
|
"ENTRY_INDEX_SPECIFICATION",
|
|
|
|
"ENUMERATION_REPESENTATION_CLAUSE",
|
|
|
|
"EXCEPTION_DECLARATION",
|
|
|
|
"EXCEPTION_HANDLER",
|
|
|
|
"EXCEPTION_RENAMING_DECLARATION",
|
|
|
|
"EXIT_STATEMENT",
|
|
|
|
"FORMAL_PACKAGE_DECLARATION",
|
|
|
|
"GENERIC_FORMAL_PART",
|
|
|
|
"GENERIC_PACKAGE_DECLARATION",
|
|
|
|
"GOTO_STATEMENT",
|
|
|
|
"HANDLED_SEQUENCE_OF_STATEMENTS",
|
|
|
|
"HANDLED_STMTS_OPT",
|
|
|
|
"IF_STATEMENT",
|
|
|
|
"INCOMPLETE_TYPE_DECLARATION",
|
|
|
|
"INDEXED_COMPONENT",
|
|
|
|
"INDEX_CONSTRAINT",
|
|
|
|
"LIBRARY_ITEM",
|
|
|
|
"LOOP_STATEMENT",
|
|
|
|
"NAME",
|
|
|
|
"NULL_STATEMENT",
|
|
|
|
"NUMBER_DECLARATION",
|
|
|
|
"OBJECT_DECLARATION",
|
|
|
|
"OBJECT_RENAMING_DECLARATION",
|
|
|
|
"OPERATOR_SYMBOL",
|
|
|
|
"PACKAGE_BODY",
|
|
|
|
"PACKAGE_BODY_STUB",
|
|
|
|
"PACKAGE_RENAMING_DECLARATION",
|
|
|
|
"PACKAGE_SPECIFICATION",
|
|
|
|
"PARAMETER_SPECIFICATION",
|
|
|
|
"PRIVATE_EXTENSION_DECLARATION",
|
|
|
|
"PRIVATE_TYPE_DECLARATION",
|
|
|
|
"PROTECTED_BODY",
|
|
|
|
"PROTECTED_BODY_STUB",
|
|
|
|
"PROTECTED_TYPE_DECLARATION",
|
|
|
|
"RAISE_STATEMENT",
|
|
|
|
"RANGE_ATTRIBUTE_REFERENCE",
|
|
|
|
"RECORD_REPRESENTATION_CLAUSE",
|
|
|
|
"REQUEUE_STATEMENT",
|
|
|
|
"RETURN_STATEMENT",
|
|
|
|
"SELECTIVE_ACCEPT",
|
|
|
|
"SEQUENCE_OF_STATEMENTS",
|
|
|
|
"SINGLE_PROTECTED_DECLARATION",
|
|
|
|
"SINGLE_TASK_DECLARATION",
|
|
|
|
"STATEMENT",
|
|
|
|
"SUBTYPE_DECLARATION",
|
|
|
|
"SUBTYPE_INDICATION",
|
|
|
|
"SUBTYPE_MARK",
|
|
|
|
"SUBUNIT",
|
|
|
|
"TASK_BODY",
|
|
|
|
"TASK_BODY_STUB",
|
|
|
|
"TASK_TYPE_DECLARATION",
|
|
|
|
"TERMINATE_ALTERNATIVE",
|
|
|
|
"TIMED_ENTRY_CALL",
|
|
|
|
"TRIGGERING_ALTERNATIVE",
|
|
|
|
"USE_CLAUSE",
|
|
|
|
"USE_TYPE_CLAUSE",
|
|
|
|
"VARIANT",
|
|
|
|
"VARIANT_PART",
|
|
|
|
"WITH_CLAUSE",
|
|
|
|
"ABSTRACT_FUNCTION_DECLARATION",
|
|
|
|
"ABSTRACT_PROCEDURE_DECLARATION",
|
|
|
|
"ACCESS_TO_FUNCTION_DECLARATION",
|
|
|
|
"ACCESS_TO_OBJECT_DECLARATION",
|
|
|
|
"ACCESS_TO_PROCEDURE_DECLARATION",
|
|
|
|
"ARRAY_OBJECT_DECLARATION",
|
|
|
|
"ARRAY_TYPE_DECLARATION",
|
|
|
|
"AND_THEN",
|
|
|
|
"BASIC_DECLARATIVE_ITEMS_OPT",
|
|
|
|
"BLOCK_BODY",
|
|
|
|
"BLOCK_BODY_OPT",
|
|
|
|
"CALL_STATEMENT",
|
|
|
|
"COMPONENT_CLAUSES_OPT",
|
|
|
|
"COMPONENT_ITEMS",
|
|
|
|
"COND_CLAUSE",
|
|
|
|
"DECIMAL_FIXED_POINT_DECLARATION",
|
|
|
|
"DECLARE_OPT",
|
|
|
|
"DERIVED_RECORD_EXTENSION",
|
|
|
|
"DISCRETE_SUBTYPE_DEF_OPT",
|
|
|
|
"DISCRIMINANT_SPECIFICATIONS",
|
|
|
|
"DISCRIM_PART_OPT",
|
|
|
|
"ELSE_OPT",
|
|
|
|
"ELSIFS_OPT",
|
|
|
|
"END_ID_OPT",
|
|
|
|
"ENTRY_INDEX_OPT",
|
|
|
|
"ENUMERATION_TYPE_DECLARATION",
|
|
|
|
"EXCEPT_HANDLER_PART_OPT",
|
|
|
|
"EXTENSION_OPT",
|
|
|
|
"FLOATING_POINT_DECLARATION",
|
|
|
|
"FORMAL_DECIMAL_FIXED_POINT_DECLARATION",
|
|
|
|
"FORMAL_DISCRETE_TYPE_DECLARATION",
|
|
|
|
"FORMAL_FLOATING_POINT_DECLARATION",
|
|
|
|
"FORMAL_FUNCTION_DECLARATION",
|
|
|
|
"FORMAL_MODULAR_TYPE_DECLARATION",
|
|
|
|
"FORMAL_ORDINARY_DERIVED_TYPE_DECLARATION",
|
|
|
|
"FORMAL_ORDINARY_FIXED_POINT_DECLARATION",
|
|
|
|
"FORMAL_PART_OPT",
|
|
|
|
"FORMAL_PRIVATE_EXTENSION_DECLARATION",
|
|
|
|
"FORMAL_PRIVATE_TYPE_DECLARATION",
|
|
|
|
"FORMAL_PROCEDURE_DECLARATION",
|
|
|
|
"FORMAL_SIGNED_INTEGER_TYPE_DECLARATION",
|
|
|
|
"FUNCTION_BODY",
|
|
|
|
"FUNCTION_BODY_STUB",
|
|
|
|
"FUNCTION_DECLARATION",
|
|
|
|
"FUNCTION_RENAMING_DECLARATION",
|
|
|
|
"GENERIC_FUNCTION_DECLARATION",
|
|
|
|
"GENERIC_FUNCTION_INSTANTIATION",
|
|
|
|
"GENERIC_FUNCTION_RENAMING",
|
|
|
|
"GENERIC_PACKAGE_INSTANTIATION",
|
|
|
|
"GENERIC_PACKAGE_RENAMING",
|
|
|
|
"GENERIC_PROCEDURE_DECLARATION",
|
|
|
|
"GENERIC_PROCEDURE_INSTANTIATION",
|
|
|
|
"GENERIC_PROCEDURE_RENAMING",
|
|
|
|
"GUARD_OPT",
|
|
|
|
"IDENTIFIER_COLON_OPT",
|
|
|
|
"ID_OPT",
|
|
|
|
"INIT_OPT",
|
|
|
|
"ITERATION_SCHEME_OPT",
|
|
|
|
"LABEL_OPT",
|
|
|
|
"MARK_WITH_CONSTRAINT",
|
|
|
|
"MODIFIERS",
|
|
|
|
"MODULAR_TYPE_DECLARATION",
|
|
|
|
"MOD_CLAUSE_OPT",
|
|
|
|
"NOT_IN",
|
|
|
|
"ORDINARY_DERIVED_TYPE_DECLARATION",
|
|
|
|
"ORDINARY_FIXED_POINT_DECLARATION",
|
|
|
|
"OR_ELSE",
|
|
|
|
"OR_SELECT_OPT",
|
|
|
|
"PARENTHESIZED_PRIMARY",
|
|
|
|
"PRIVATE_DECLARATIVE_ITEMS_OPT",
|
|
|
|
"PRIVATE_TASK_ITEMS_OPT",
|
|
|
|
"PROCEDURE_BODY",
|
|
|
|
"PROCEDURE_BODY_STUB",
|
|
|
|
"PROCEDURE_DECLARATION",
|
|
|
|
"PROCEDURE_RENAMING_DECLARATION",
|
|
|
|
"PROT_MEMBER_DECLARATIONS",
|
|
|
|
"PROT_OP_BODIES_OPT",
|
|
|
|
"PROT_OP_DECLARATIONS",
|
|
|
|
"PROT_PRIVATE_OPT",
|
|
|
|
"RANGED_EXPRS",
|
|
|
|
"RANGE_CONSTRAINT",
|
|
|
|
"RECORD_TYPE_DECLARATION",
|
|
|
|
"SELECTOR_NAMES_OPT",
|
|
|
|
"SIGNED_INTEGER_TYPE_DECLARATION",
|
|
|
|
"TASK_ITEMS_OPT",
|
|
|
|
"UNARY_MINUS",
|
|
|
|
"UNARY_PLUS",
|
|
|
|
"VALUE",
|
|
|
|
"VALUES",
|
|
|
|
"VARIANTS",
|
|
|
|
"COMMENT_INTRO",
|
|
|
|
"OX",
|
|
|
|
"TIC_OR_CHARACTER_LITERAL",
|
|
|
|
"DIGIT",
|
|
|
|
"EXPONENT",
|
|
|
|
"EXTENDED_DIGIT",
|
|
|
|
"BASED_INTEGER",
|
|
|
|
"WS_",
|
|
|
|
"COMMENT",
|
|
|
|
"CHARACTER_STRING",
|
|
|
|
0
|
|
|
|
};
|
|
|
|
|
|
|
|
const unsigned long AdaTreeParserSuper::_tokenSet_0_data_[] = { 37920UL, 262201UL, 4293001216UL, 2175UL, 134479872UL, 0UL, 64UL, 1073741824UL, 3145738UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
|
|
|
|
// IDENTIFIER RIGHT_SHAFT DOT TIC "in" CHARACTER_LITERAL CHAR_STRING "null"
|
|
|
|
// "mod" "or" "and" "xor" "not" EQ NE LT_ LE GT GE PLUS MINUS CONCAT STAR
|
|
|
|
// DIV "rem" "abs" EXPON NUMERIC_LIT ALLOCATOR INDEXED_COMPONENT OPERATOR_SYMBOL
|
|
|
|
// AND_THEN NOT_IN OR_ELSE PARENTHESIZED_PRIMARY UNARY_MINUS UNARY_PLUS
|
|
|
|
const ANTLR_USE_NAMESPACE(antlr)BitSet AdaTreeParserSuper::_tokenSet_0(_tokenSet_0_data_,20);
|
|
|
|
const unsigned long AdaTreeParserSuper::_tokenSet_1_data_[] = { 939627552UL, 262201UL, 4293001216UL, 2175UL, 134479872UL, 0UL, 64UL, 1073741824UL, 3145738UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
|
|
|
|
// IDENTIFIER RIGHT_SHAFT DOT TIC "range" "others" PIPE DOT_DOT "in" CHARACTER_LITERAL
|
|
|
|
// CHAR_STRING "null" "mod" "or" "and" "xor" "not" EQ NE LT_ LE GT GE PLUS
|
|
|
|
// MINUS CONCAT STAR DIV "rem" "abs" EXPON NUMERIC_LIT ALLOCATOR INDEXED_COMPONENT
|
|
|
|
// OPERATOR_SYMBOL AND_THEN NOT_IN OR_ELSE PARENTHESIZED_PRIMARY UNARY_MINUS
|
|
|
|
// UNARY_PLUS
|
|
|
|
const ANTLR_USE_NAMESPACE(antlr)BitSet AdaTreeParserSuper::_tokenSet_1(_tokenSet_1_data_,20);
|
|
|
|
const unsigned long AdaTreeParserSuper::_tokenSet_2_data_[] = { 0UL, 0UL, 0UL, 49152UL, 3338801504UL, 2353094950UL, 151076927UL, 2416967168UL, 328577UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
|
|
|
|
// ATTRIBUTE_DEFINITION_CLAUSE AT_CLAUSE ENUMERATION_REPESENTATION_CLAUSE
|
|
|
|
// EXCEPTION_DECLARATION EXCEPTION_RENAMING_DECLARATION GENERIC_PACKAGE_DECLARATION
|
|
|
|
// INCOMPLETE_TYPE_DECLARATION NUMBER_DECLARATION OBJECT_DECLARATION OBJECT_RENAMING_DECLARATION
|
|
|
|
// PACKAGE_RENAMING_DECLARATION PACKAGE_SPECIFICATION PRIVATE_EXTENSION_DECLARATION
|
|
|
|
// PRIVATE_TYPE_DECLARATION PROTECTED_TYPE_DECLARATION RECORD_REPRESENTATION_CLAUSE
|
|
|
|
// SINGLE_PROTECTED_DECLARATION SINGLE_TASK_DECLARATION SUBTYPE_DECLARATION
|
|
|
|
// TASK_TYPE_DECLARATION USE_CLAUSE USE_TYPE_CLAUSE ABSTRACT_FUNCTION_DECLARATION
|
|
|
|
// ABSTRACT_PROCEDURE_DECLARATION ACCESS_TO_FUNCTION_DECLARATION ACCESS_TO_OBJECT_DECLARATION
|
|
|
|
// ACCESS_TO_PROCEDURE_DECLARATION ARRAY_OBJECT_DECLARATION ARRAY_TYPE_DECLARATION
|
|
|
|
// DECIMAL_FIXED_POINT_DECLARATION DERIVED_RECORD_EXTENSION ENUMERATION_TYPE_DECLARATION
|
|
|
|
// FLOATING_POINT_DECLARATION FUNCTION_BODY_STUB FUNCTION_DECLARATION FUNCTION_RENAMING_DECLARATION
|
|
|
|
// GENERIC_FUNCTION_DECLARATION GENERIC_FUNCTION_INSTANTIATION GENERIC_FUNCTION_RENAMING
|
|
|
|
// GENERIC_PACKAGE_INSTANTIATION GENERIC_PACKAGE_RENAMING GENERIC_PROCEDURE_DECLARATION
|
|
|
|
// GENERIC_PROCEDURE_INSTANTIATION GENERIC_PROCEDURE_RENAMING MODULAR_TYPE_DECLARATION
|
|
|
|
// ORDINARY_DERIVED_TYPE_DECLARATION ORDINARY_FIXED_POINT_DECLARATION PROCEDURE_BODY_STUB
|
|
|
|
// PROCEDURE_DECLARATION PROCEDURE_RENAMING_DECLARATION RECORD_TYPE_DECLARATION
|
|
|
|
// SIGNED_INTEGER_TYPE_DECLARATION
|
|
|
|
const ANTLR_USE_NAMESPACE(antlr)BitSet AdaTreeParserSuper::_tokenSet_2(_tokenSet_2_data_,20);
|
|
|
|
const unsigned long AdaTreeParserSuper::_tokenSet_3_data_[] = { 16UL, 0UL, 0UL, 49152UL, 40UL, 256UL, 0UL, 1024UL, 256UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
|
|
|
|
// "pragma" ATTRIBUTE_DEFINITION_CLAUSE AT_CLAUSE ENTRY_DECLARATION ENUMERATION_REPESENTATION_CLAUSE
|
|
|
|
// RECORD_REPRESENTATION_CLAUSE FUNCTION_DECLARATION PROCEDURE_DECLARATION
|
|
|
|
const ANTLR_USE_NAMESPACE(antlr)BitSet AdaTreeParserSuper::_tokenSet_3(_tokenSet_3_data_,20);
|
|
|
|
const unsigned long AdaTreeParserSuper::_tokenSet_4_data_[] = { 36896UL, 0UL, 0UL, 0UL, 262144UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
|
|
|
|
// IDENTIFIER DOT TIC INDEXED_COMPONENT
|
|
|
|
const ANTLR_USE_NAMESPACE(antlr)BitSet AdaTreeParserSuper::_tokenSet_4(_tokenSet_4_data_,12);
|
|
|
|
|
|
|
|
|