|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectplp.orientadaAspectos1.parser.OA1Parser
public class OA1Parser
Parser para a Linguagem de Programação Orientada a Objetos
Field Summary | |
---|---|
Token |
jj_nt
|
boolean |
lookingAhead
|
Token |
token
|
OA1ParserTokenManager |
token_source
|
Fields inherited from interface plp.orientadaAspectos1.parser.OA1ParserConstants |
---|
ADVICE_AFTER, ADVICE_AROUND, ADVICE_BEFORE, AND, ASPECTO, ASSIGN, ATTRIB, BANG, BIT_AND, BIT_OR, BOOLEAN, CFLOW, CFLOWBELOW, CLASSE, COLON, COMAND_SKIP, COMMA, CONCAT, DECIMAL_LITERAL, DEFAULT, DIGIT, DO, DOT, DOT_DOT, ELSE, EOF, EQ, FALSE, FORMAL_COMMENT, GE, GET, GT, HEX_LITERAL, HOOK, IDENTIFIER, IF, INT, INTEGER_LITERAL, LBRACE, LBRACKET, LE, LENGTH, LETTER, LPAREN, LT, MINUS, MULTI_LINE_COMMENT, NE, NEW, NOT, NULL, OCTAL_LITERAL, OR, PLUS, POINTCUT, PROC, PROCEED, RBRACE, RBRACKET, READ, REM, RPAREN, SC_AND, SC_OR, SEMICOLON, SET, SINGLE_LINE_COMMENT, SLASH, STAR, STRING, STRING_LITERAL, THEN, THIS, TILDE, tokenImage, TRUE, VAR, WHILE, WITHIN, WITHINCODE, WRITE, XOR |
Constructor Summary | |
---|---|
OA1Parser(java.io.InputStream stream)
|
|
OA1Parser(OA1ParserTokenManager tm)
|
|
OA1Parser(java.io.Reader stream)
|
Method Summary | |
---|---|
void |
disable_tracing()
|
void |
enable_tracing()
|
ParseException |
generateParseException()
|
Token |
getNextToken()
|
Token |
getToken(int index)
|
static void |
main(java.lang.String[] args)
Método principal que executa um dado programa que pode ser fornecido através da entrada padrão ou em um arquivo cujo nome entra como parâmetro para esse método. |
AcessoAtributo |
PAcessoAtributo(This thisObject)
AcessoAtributo ::= this.Id | (this).id | "("LeftExpression")".Id | Id.Id |
AcessoAtributoId |
PAcessoAtributoId(This thisObject)
... |
AcessoAtributoId |
PAcessoAtributoIdChamador(This thisObject)
... |
AcessoAtributoThis |
PAcessoAtributoThis(This thisObject)
... this.Id | (this).id |
Atribuicao |
PAtribuicao(This thisObject)
Atribuicao ::= LeftExpression ":=" Expressao |
PointcutExpressao |
PCflowbelowPointcutDesignator()
cflowbelow "(" Id "." |
PointcutExpressao |
PCflowPointcutDesignator()
cflow "(" Id.Id ")" |
ChamadaMetodo |
PChamadaMetodo(This thisObject)
ChamadaMetodo ::= ExpressaoChamadora "." |
Comando |
PComando(This thisObject)
Comando::= ComandoSimples | ComandoSequencial |
ComandoAround |
PComandoAround()
Comando | Comando "proceed" Comando |
ComandoAround |
PComandoAroundProceed()
ComandoAroundProceed |
ComandoAround |
PComandoAroundSimples()
ComandoAroundSimples |
Sequencial |
PComandoSequencial(This thisObject)
ComandoSequencial ::= ComandoSimples ";" Comando |
Comando |
PComandoSimples(This thisObject)
ComandoSimples ::= Skip | ComDeclaracao | While | IfThenElse | IO | ChamadaMetodo | New | Atribuicao | "("Comando") |
ComDeclaracao |
PComDeclaracao(This thisObject)
ComDeclaracao :: = "{" DecVariavel ";" Comando "}" |
CompostaDecVariavel |
PCompostaDecVariavel(This thisObject)
... |
DecAdvice |
PDecAdvice()
DecAdviceSimples | DecAdvice "," DecAdvice |
DecAdvice |
PDecAdviceAfter()
"after" ":" Id "{" Comando "}" |
DecAdvice |
PDecAdviceAround()
"around" ":" Id "{" ComandoAround "}" |
DecAdvice |
PDecAdviceBefore()
"before" ":" Id "{" Comando "}" |
DecAdvice |
PDecAdviceComposto()
DecAdvice "," DecAdvice |
DecAdvice |
PDecAdviceSimples()
"before" ":" Id "{" Comando "}" | "after" ":" Id "{" Comando "}" | "around" ":" "{" ComandoAround "}" | |
DecAspecto |
PDecAspecto(This thisObject)
... |
DecAspecto |
PDecAspectoComIntroducao(This thisObject)
|
DecAspecto |
PDecAspectoSemIntroducao()
|
DecClasse |
PDecClasse()
... |
DecElemento |
PDecElemento()
DecClasse ::= "classe" Id "{" DecVariavel ";" DecProcedimento "}" | DecClasse "," DecClasse |
DecElementoComposto |
PDecElementoComposto()
... |
DecElemento |
PDecElementoSimples()
... |
DecIntroducao |
PDecIntroducao(This thisObject)
|
DecIntroducao |
PDecIntroducaoComposta(This thisObject)
|
DecIntroducaoProcedimento |
PDecIntroducaoProcedimento(This thisObject)
|
DecIntroducao |
PDecIntroducaoSimples(This thisObject)
|
DecIntroducao |
PDecIntroducaoVariavel(This thisObject)
|
DecIntroducaoVariavel |
PDecIntroducaoVariavelObjeto()
|
DecParametro |
PDecParametroAtomico()
...Tipo Id |
ListaDeclaracaoParametro |
PDecParametroComposto()
... |
DecPointcut |
PDecPointcut()
... |
DecPointcut |
PDecPointcutComposto()
DecPointcut "," DecPointut |
DecPointcut |
PDecPointcutSimples()
"pointcut" Id ":" PointcutExpressao |
DecProcedimento |
PDecProcedimento()
DecProcedimento ::= "proc" Id "("")" "{"Comando"}" | "proc" Id "(" ListaDeclaracaoParametro ")" "{"Comando"}" | DecProcedimento "," DecProcedimento |
DecProcedimentoComposta |
PDecProcedimentoComposta()
... |
DecProcedimento |
PDecProcedimentoSimples()
... |
DecVariavel |
PDecVariavel(This thisObject)
DecVariavel ::= Tipo Id "=" Expressao | DecVariavel "," DecVariavel | Tipo Id ":=" "new" Id | "("DecVariavel")" |
DecVariavel |
PDecVariavelAtomica(This thisObject)
... |
DecVariavelObjeto |
PDecVariavelObjeto()
... |
PointcutExpressao |
PEscritaAtributoPointcutDesignator()
set "(" Id "." |
Expressao |
PExpBinaria(This thisObject)
ExpBinaria ::= ExpUnaria ( "+" ExpUnaria | "-" ExpUnaria | "and" ExpUnaria | "or" ExpUnaria | "==" ExpUnaria | "++" Expressao)* |
Expressao |
PExpLength(This thisObject)
... |
Expressao |
PExpMenos(This thisObject)
... "-" Expressao |
Expressao |
PExpNot(This thisObject)
... |
Expressao |
PExpPrimaria(This thisObject)
ExpPrimaria ::= Valor | LeftExpression | this | "("Expressao")" |
Expressao |
PExpressao(This thisObject)
Expressao ::= ExpUnaria | ExpBinaria | ExpPrimaria |
Expressao |
PExpressaoChamadora(This thisObject)
Uma expressao chamadora eh aquela que chama um método. |
Expressao |
PExpUnaria(This thisObject)
ExpUnaria ::= "-" Expressao | "not" Expressao | "length" Expressao | ExpPrimaria |
Id |
PId()
... |
IfThenElse |
PIfThenElse(This thisObject)
IfThenElse ::= "if" Expressao "then" "{" Comando "}" | "if" Expressao "then" "{" Comando "}" "else" "{" Comando "}" |
DecIntroducaoVariavel |
PIntroducaoSimplesDecVariavel(This thisObject)
|
IO |
PIO(This thisObject)
IO ::= "write" "(" Expressao ")" | "read" "(" Id ")" |
LeftExpression |
PLeftExpression(This thisObject)
LeftExpression ::= Id | AcessoAtributo |
LeftExpression |
PLeftExpressionChamadora(This thisObject)
LeftExpressionChamadora ::= AcessoAtributoChamador | AcessoAtributoThis | id |
PointcutExpressao |
PLeituraAtributoPointcutDesignator()
get "(" Id "." |
ListaDeclaracaoParametro |
PListaDeclaracaoParametro()
ListaDeclaracaoParametro ::= Tipo Id | Tipo Id "," ListaDeclaracaoParametro |
ListaExpressao |
PListaExpressao(This thisObject)
ListaExpressao ::= Expressao | Expressao "," ListaExpressao |
Expressao |
PListaExpressaoAtomica(This thisObject)
...Expressao |
ListaExpressao |
PListaExpressaoComposta(This thisObject)
... |
ListaTipoParametro |
PListaTipoParametro()
ListaTipoParametro ::= Id | Id "," ListaTipoParametro |
ListaTipoParametro |
PListaTipoParametroStar()
ListaTipoParametro ::= Id |
PointcutExpressao |
PMethodCallPointcutDesignator()
Id "." |
New |
PNew(This thisObject)
New ::= LeftExpression ":=" "new" Id |
PointcutExpressao |
PPointcutDesignator()
PointcutDesignator |
PointcutExpressao |
PPointcutDesignatorBooleanaNot()
|
PointcutExpressao |
PPointcutExpressao()
PointcutDesignator | PointcutExpressaoBooleana |
PointcutExpressao |
PPointcutExpressaoBooleana()
PointcutExpressaoBooleana |
PointcutExpressao |
PPointcutExpressaoBooleanaNot()
|
Id |
PPointcutPattern()
... |
Id |
PPointcutPatternId()
|
Id |
PPointcutPatternIdStar()
|
Id |
PPointcutPatternStar()
|
Id |
PPointcutPatternStarId()
|
Programa |
PPrograma()
Programa ::= "{" DecElemento ";" Comando "}" |
Read |
PRead()
... |
PointcutExpressao |
PRefPointcutDesignator()
Id |
Programa |
processaEntrada()
Método chamado com o intuito de processar a entrada fornecida ao parser gerando objeto do tipo Programa. |
SimplesDecVariavel |
PSimplesDecVariavel(This thisObject)
... |
Skip |
PSkip()
Skip::= |
This |
PThis(This thisObject)
... this |
Tipo |
PTipo()
Tipo ::= TipoClasse | TipoPrimitivo |
Tipo |
PTipoClasse()
TipoClasse ::= Id |
Tipo |
PTipoPrimitivo()
TipoPrimitivo ::= "string" | "int" | "boolean" |
Token |
PTiposValidosListaParametros()
PTiposValidosListaParametros ::= |
Valor |
PValor()
Valor ::= ValorInteiro | ValorNull | ValorBooleano | ValorString |
Valor |
PValorBooleano()
... |
Valor |
PValorInteiro()
... |
ValorNull |
PValorNull()
... |
Valor |
PValorString()
... |
While |
PWhile(This thisObject)
While ::= "while" Expressao do" "{" Comando "}" |
PointcutExpressao |
PWithincodePointcutDesignator()
withincode "(" Id "." |
PointcutExpressao |
PWithinPointcutDesignator()
within "(" Id ")" |
Write |
PWrite(This thisObject)
... |
void |
ReInit(java.io.InputStream stream)
|
void |
ReInit(OA1ParserTokenManager tm)
|
void |
ReInit(java.io.Reader stream)
|
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public OA1ParserTokenManager token_source
public Token token
public Token jj_nt
public boolean lookingAhead
Constructor Detail |
---|
public OA1Parser(java.io.InputStream stream)
public OA1Parser(java.io.Reader stream)
public OA1Parser(OA1ParserTokenManager tm)
Method Detail |
---|
public static void main(java.lang.String[] args)
args
- Argumentos para o método.public final Programa processaEntrada() throws ParseException
ParseException
public final Programa PPrograma() throws ParseException
ParseException
public final Comando PComando(This thisObject) throws ParseException
ParseException
public final Sequencial PComandoSequencial(This thisObject) throws ParseException
ParseException
public final Comando PComandoSimples(This thisObject) throws ParseException
ParseException
public final Skip PSkip() throws ParseException
ParseException
public final ComDeclaracao PComDeclaracao(This thisObject) throws ParseException
ParseException
public final While PWhile(This thisObject) throws ParseException
ParseException
public final IfThenElse PIfThenElse(This thisObject) throws ParseException
ParseException
public final ChamadaMetodo PChamadaMetodo(This thisObject) throws ParseException
ParseException
public final ListaExpressao PListaExpressao(This thisObject) throws ParseException
ParseException
public final ListaExpressao PListaExpressaoComposta(This thisObject) throws ParseException
ParseException
public final Expressao PListaExpressaoAtomica(This thisObject) throws ParseException
ParseException
public final New PNew(This thisObject) throws ParseException
ParseException
public final Atribuicao PAtribuicao(This thisObject) throws ParseException
ParseException
public final IO PIO(This thisObject) throws ParseException
ParseException
public final Read PRead() throws ParseException
ParseException
public final Write PWrite(This thisObject) throws ParseException
ParseException
public final Expressao PExpressao(This thisObject) throws ParseException
ParseException
public final Expressao PExpPrimaria(This thisObject) throws ParseException
ParseException
public final Valor PValor() throws ParseException
ParseException
public final Valor PValorInteiro() throws ParseException
ParseException
public final ValorNull PValorNull() throws ParseException
ParseException
public final Valor PValorBooleano() throws ParseException
ParseException
public final Valor PValorString() throws ParseException
ParseException
public final Expressao PExpUnaria(This thisObject) throws ParseException
ParseException
public final Expressao PExpMenos(This thisObject) throws ParseException
ParseException
public final Expressao PExpNot(This thisObject) throws ParseException
ParseException
public final Expressao PExpLength(This thisObject) throws ParseException
ParseException
public final Expressao PExpBinaria(This thisObject) throws ParseException
ParseException
public final This PThis(This thisObject) throws ParseException
ParseException
public final LeftExpression PLeftExpression(This thisObject) throws ParseException
ParseException
public final Id PId() throws ParseException
ParseException
public final AcessoAtributo PAcessoAtributo(This thisObject) throws ParseException
ParseException
public final AcessoAtributoThis PAcessoAtributoThis(This thisObject) throws ParseException
ParseException
public final AcessoAtributoId PAcessoAtributoId(This thisObject) throws ParseException
ParseException
public final Expressao PExpressaoChamadora(This thisObject) throws ParseException
ParseException
public final LeftExpression PLeftExpressionChamadora(This thisObject) throws ParseException
ParseException
public final AcessoAtributoId PAcessoAtributoIdChamador(This thisObject) throws ParseException
ParseException
public final DecElemento PDecElemento() throws ParseException
ParseException
public final DecElemento PDecElementoSimples() throws ParseException
ParseException
public final DecElementoComposto PDecElementoComposto() throws ParseException
ParseException
public final DecClasse PDecClasse() throws ParseException
ParseException
public final DecAspecto PDecAspecto(This thisObject) throws ParseException
ParseException
public final DecAspecto PDecAspectoComIntroducao(This thisObject) throws ParseException
ParseException
public final DecAspecto PDecAspectoSemIntroducao() throws ParseException
ParseException
public final DecIntroducao PDecIntroducao(This thisObject) throws ParseException
ParseException
public final DecIntroducao PDecIntroducaoComposta(This thisObject) throws ParseException
ParseException
public final DecIntroducao PDecIntroducaoSimples(This thisObject) throws ParseException
ParseException
public final DecIntroducaoProcedimento PDecIntroducaoProcedimento(This thisObject) throws ParseException
ParseException
public final DecIntroducao PDecIntroducaoVariavel(This thisObject) throws ParseException
ParseException
public final DecIntroducaoVariavel PDecIntroducaoVariavelObjeto() throws ParseException
ParseException
public final DecIntroducaoVariavel PIntroducaoSimplesDecVariavel(This thisObject) throws ParseException
ParseException
public final DecPointcut PDecPointcut() throws ParseException
ParseException
public final DecPointcut PDecPointcutSimples() throws ParseException
ParseException
public final DecPointcut PDecPointcutComposto() throws ParseException
ParseException
public final PointcutExpressao PPointcutExpressao() throws ParseException
ParseException
public final PointcutExpressao PPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PRefPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PMethodCallPointcutDesignator() throws ParseException
ParseException
public final Id PPointcutPattern() throws ParseException
ParseException
public final Id PPointcutPatternStarId() throws ParseException
ParseException
public final Id PPointcutPatternStar() throws ParseException
ParseException
public final Id PPointcutPatternIdStar() throws ParseException
ParseException
public final Id PPointcutPatternId() throws ParseException
ParseException
public final PointcutExpressao PWithinPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PWithincodePointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PCflowPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PCflowbelowPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PEscritaAtributoPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PLeituraAtributoPointcutDesignator() throws ParseException
ParseException
public final PointcutExpressao PPointcutExpressaoBooleana() throws ParseException
ParseException
public final PointcutExpressao PPointcutDesignatorBooleanaNot() throws ParseException
ParseException
public final PointcutExpressao PPointcutExpressaoBooleanaNot() throws ParseException
ParseException
public final DecAdvice PDecAdvice() throws ParseException
ParseException
public final DecAdvice PDecAdviceComposto() throws ParseException
ParseException
public final DecAdvice PDecAdviceSimples() throws ParseException
ParseException
public final DecAdvice PDecAdviceBefore() throws ParseException
ParseException
public final DecAdvice PDecAdviceAfter() throws ParseException
ParseException
public final DecAdvice PDecAdviceAround() throws ParseException
ParseException
public final ComandoAround PComandoAround() throws ParseException
ParseException
public final ComandoAround PComandoAroundSimples() throws ParseException
ParseException
public final ComandoAround PComandoAroundProceed() throws ParseException
ParseException
public final DecVariavel PDecVariavel(This thisObject) throws ParseException
ParseException
public final CompostaDecVariavel PCompostaDecVariavel(This thisObject) throws ParseException
ParseException
public final DecVariavel PDecVariavelAtomica(This thisObject) throws ParseException
ParseException
public final DecVariavelObjeto PDecVariavelObjeto() throws ParseException
ParseException
public final SimplesDecVariavel PSimplesDecVariavel(This thisObject) throws ParseException
ParseException
public final DecProcedimento PDecProcedimento() throws ParseException
ParseException
public final DecProcedimentoComposta PDecProcedimentoComposta() throws ParseException
ParseException
public final DecProcedimento PDecProcedimentoSimples() throws ParseException
ParseException
public final ListaTipoParametro PListaTipoParametroStar() throws ParseException
ParseException
public final ListaTipoParametro PListaTipoParametro() throws ParseException
ParseException
public final Token PTiposValidosListaParametros() throws ParseException
ParseException
public final ListaDeclaracaoParametro PListaDeclaracaoParametro() throws ParseException
ParseException
public final ListaDeclaracaoParametro PDecParametroComposto() throws ParseException
ParseException
public final DecParametro PDecParametroAtomico() throws ParseException
ParseException
public final Tipo PTipo() throws ParseException
ParseException
public final Tipo PTipoPrimitivo() throws ParseException
ParseException
public final Tipo PTipoClasse() throws ParseException
ParseException
public void ReInit(java.io.InputStream stream)
public void ReInit(java.io.Reader stream)
public void ReInit(OA1ParserTokenManager tm)
public final Token getNextToken()
public final Token getToken(int index)
public ParseException generateParseException()
public final void enable_tracing()
public final void disable_tracing()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |