private void classe() { try { match(TokenType.CLASSE); match(TokenType.ID); complemento_decl_classe(); } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro na declaração de classe - "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(CLASSE)); } }
private void decl_constantes_mesmo_tipo() { try { tipo_variavel(); lista_decl_constantes(); match(TokenType.PONTOVIRGULA); } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro na declaração de constantes - "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(DECL_CONSTANTES_MESMO_TIPO)); } }
private void bloco_variaveis() { try { match(TokenType.VARIAVEIS); match(TokenType.ABRECHAVE); declaracao_variaveis(); match(TokenType.FECHACHAVE); } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro na declaração do bloco de variáveis - "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(BLOCO_VARIAVEIS)); } }
private void bloco_constantes() { try { match(TokenType.CONSTANTES); match(TokenType.ABRECHAVE); declaracao_constantes(); match(TokenType.FECHACHAVE); } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro na declaração do bloco de constantes - "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(BLOCO_CONSTANTES)); } }
private void bloco_metodos() { try { if (tokenAtual.getTipo() == TokenType.METODOS) { match(TokenType.METODOS); match(TokenType.ABRECHAVE); declaracao_metodos(); match(TokenType.FECHACHAVE); } } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro no bloco de declaração de métodos: "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(BLOCO_METODOS)); } }
private void declaracao_metodo() { try { match(TokenType.ID); match(TokenType.ABREPAR); parametros_formais(); match(TokenType.FECHAPAR); match(TokenType.ABRECHAVE); dec_var_metodo(); comandos(); match(TokenType.FECHACHAVE); } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro na declaração de método: "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(DECLARACAO_METODO)); } }
private void decl_variaveis_mesmo_tipo() { try { if (primeiro(TIPO_VARIAVEL).contains(tokenAtual.getTipo())) { tipo_variavel(); lista_decl_variaveis(); match(TokenType.PONTOVIRGULA); } else if (tokenAtual.getTipo() == TokenType.ID) { match(TokenType.ID); match(TokenType.ID); complemento_variavel_instanciar_obj(); match(TokenType.PONTOVIRGULA); } else throw new ErroSintaticoException("esperando declaração de tipo (primitivo ou classe): "); } catch (ErroSintaticoException ex) { ex.mensagemContexto = "Erro na declaração de variável - "; erroSintatico(ex); panico(conjuntoSequencia.getConjunto(DECL_VARIAVEIS_MESMO_TIPO)); } }