void sintac() : {}
{try
{ CUERPO() }
catch(ParseException e){
System.out.println("Error en el programa");
archSint_escribe(e.getMessage());
}}
void CUERPO() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en el cuerpo de clase");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void BLOQUE_ATRIBUTOS() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en bloque de atributos");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void DECLARACION() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en las declaracion");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void CONSTRUCTOR() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en el constructor");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void TERMINO() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error en termino");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void INICIALIZACION() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en las inicializacion");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void PRINCIPAL() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error en main");
archSint_escribe(e.getMessage());
Token t;
do{ t = getNextToken();
}
while( t.kind != puncoma & t.kind != EOF);
}}
void ARGUMENTO() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error en argumento");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while( t.kind != puncoma & t.kind != EOF);
}}
void INSTRUCCION() : {}
{try
{ (DECLARACION()) | (ASIGNACION()) | (SELECCION()) | (ITERACION()) | (WHILE()) | (CALLFUNCION()) }
catch(ParseException e) {
System.out.println("Error en la instruccion");
archSint_escribe(e.getMessage());
archSint_escribe("Error en la instruccion");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void ASIGNACION() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error en la asignacion");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void OPER_REL() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error en la asignacion");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void SELECCION() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en la sentencia seleccion 'if' ");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void ITERACION() : {}
{try
{
EXPR_REL()
catch(ParseException e) {
System.out.println("Error en la sentencia de iteracion 'for' ");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void WHILE() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error en while");
archSint_escribe(e.getMessage());
archSint_escribe("Error en la sentencia de iteracion while ");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void CALLFUNCION() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error operador logico");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void EXPR_REL() : {}
{try
{ (TERMINO() OPER_REL() TERMINO()) }
catch(ParseException e) {
System.out.println("Error en la expresion relacional ");
archSint_escribe(e.getMessage());
archSint_escribe("Error en la expresion relacional ");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void OPER_ARI() : {}
{try
{ (
| ) }
catch(ParseException e) {
System.out.println("Error en operacion aritmetica");
archSint_escribe(e.getMessage());
archSint_escribe("Error operador aritmetico");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void EXPR_ARI() : {}
{try
{ (TERMINO() OPER_ARI() TERMINO()) }
catch(ParseException e) {
System.out.println("Error en la expresion aritmetica ");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void OPER_LOG() : {}
{try
{ ( | ) }
catch(ParseException e) {
System.out.println("Error operador logico");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void FUNCION() : {}
{try
{ ("," )* (INSTRUCCION())* }
catch(ParseException e) {
System.out.println("Error en la funcion");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
catch(ParseException e) {
System.out.println("Error en operacion aritmetica");
archSint_escribe(e.getMessage());
archSint_escribe("Error operador aritmetico");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void EXPR_ARI() : {}
{try
{ (TERMINO() OPER_ARI() TERMINO()) }
catch(ParseException e) {
System.out.println("Error en la expresion aritmetica ");
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void OPER_LOG() : {}
{try
{ (
catch(ParseException e) {
System.out.println("Error operador logico");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}
void FUNCION() : {}
{try
{
catch(ParseException e) {
System.out.println("Error en la funcion");
archSint_escribe(e.getMessage());
Token t;
do{
t = getNextToken();}
while(t.kind != puncoma & t.kind != EOF);
}}