|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectplp.orientadaObjetos2.parser.OO2Parser
public class OO2Parser
Parser para a Linguagem de Programação Orientada a Objetos
Field Summary | |
---|---|
Token |
jj_nt
|
boolean |
lookingAhead
|
Token |
token
|
OO2ParserTokenManager |
token_source
|
Fields inherited from interface plp.orientadaObjetos2.parser.OO2ParserConstants |
---|
AND, ASSIGN, ATTRIB, BANG, BIT_AND, BIT_OR, BOOLEAN, CLASSE, COLON, COMAND_SKIP, COMMA, CONCAT, DECIMAL_LITERAL, DEFAULT, DIGIT, DO, DOT, ELSE, EOF, EQ, EXTENDS, FALSE, FORMAL_COMMENT, GE, GT, HEX_LITERAL, HOOK, IDENTIFIER, IF, INSTANCEOF, INT, INTEGER_LITERAL, LBRACE, LBRACKET, LE, LENGTH, LETTER, LPAREN, LT, MINUS, MULTI_LINE_COMMENT, NE, NEW, NOT, NULL, OCTAL_LITERAL, OR, PLUS, PRIVATE, PROC, PUBLIC, RBRACE, RBRACKET, READ, REM, RPAREN, SC_AND, SC_OR, SEMICOLON, SINGLE_LINE_COMMENT, SLASH, STAR, STRING, STRING_LITERAL, SUPER, THEN, THIS, TILDE, tokenImage, TRUE, VAR, WHILE, WRITE, XOR |
Constructor Summary | |
---|---|
OO2Parser(java.io.InputStream stream)
|
|
OO2Parser(java.io.InputStream stream,
java.lang.String encoding)
|
|
OO2Parser(OO2ParserTokenManager tm)
|
|
OO2Parser(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()
AcessoAtributo ::= this.Id | (this).id | (super).id | "("LeftExpression")".Id | Id.Id |
AcessoAtributoId |
PAcessoAtributoId()
... |
AcessoAtributoId |
PAcessoAtributoIdChamador()
... |
AcessoAtributoSuper |
PAcessoAtributoSuper()
... super.Id | (super).id |
AcessoAtributoThis |
PAcessoAtributoThis()
... this.Id | (this).id |
AtribuicaoOO2 |
PAtribuicao()
Atribuicao ::= LeftExpression ":=" Expressao |
Cast |
PCast()
Cast ::= LeftExpression ":=" "("idClasseCast")" Id |
ChamadaMetodoOO2 |
PChamadaMetodo()
ChamadaMetodo ::= ExpressaoChamadora "." |
Comando |
PComando()
Comando::= ComandoSimples | ComandoSequencial |
Sequencial |
PComandoSequencial()
ComandoSequencial ::= ComandoSimples ";" Comando |
Comando |
PComandoSimples()
ComandoSimples ::= Skip | ComDeclaracao | While | IfThenElse | IO | ChamadaMetodo | New | Cast | Atribuicao | "("Comando") |
ComDeclaracao |
PComDeclaracao()
ComDeclaracao :: = "{" DecVariavel ";" Comando "}" |
CompostaDecVariavel |
PCompostaDecVariavel()
... |
DecClasse |
PDecClasse()
DecClasse ::= "classe" Id "{" DecVariavel ";" DecProcedimento "}" | DecClasse "," DecClasse |
DecClasse |
PDecClasseAtomica()
... |
DecClasseComposta |
PDecClasseComposta()
... |
DecConstrutor |
PDecConstrutor()
... |
java.lang.String |
PDecModificador()
|
DecParametro |
PDecParametroAtomico()
...Tipo Id |
ListaDeclaracaoParametro |
PDecParametroComposto()
... |
DecProcedimento |
PDecProcedimento()
DecProcedimento ::= "proc" Id "("")" "{"Comando"}" | "proc" Id "(" ListaDeclaracaoParametro ")" "{"Comando"}" | DecProcedimento "," DecProcedimento |
DecProcedimentoComposta |
PDecProcedimentoComposta()
... |
DecProcedimento |
PDecProcedimentoSimples()
... |
DecVariavel |
PDecVariavel()
DecVariavel ::= Tipo Id "=" Expressao | DecVariavel "," DecVariavel | Tipo Id ":=" "new" Id | "("DecVariavel")" |
DecVariavel |
PDecVariavelAtomica()
... |
DecVariavelObjeto |
PDecVariavelObjeto()
... |
Expressao |
PExpBinaria()
ExpBinaria ::= ExpUnaria ( "+" ExpUnaria | "-" ExpUnaria | "and" ExpUnaria | "or" ExpUnaria | "==" ExpUnaria | "++" Expressao)* |
Expressao |
PExpLength()
... |
Expressao |
PExpMenos()
... "-" Expressao |
Expressao |
PExpNot()
... |
Expressao |
PExpPrimaria()
ExpPrimaria ::= Valor | LeftExpression | this | "("Expressao")" |
Expressao |
PExpressao()
Expressao ::= ExpUnaria | ExpBinaria | ExpPrimaria |
Expressao |
PExpressaoChamadora()
Uma expressao chamadora eh aquela que chama um método. |
Expressao |
PExpUnaria()
ExpUnaria ::= "-" Expressao | "not" Expressao | "length" Expressao | ExpPrimaria |
Id |
PId()
... |
IfThenElse |
PIfThenElse()
IfThenElse ::= "if" Expressao "then" "{" Comando "}" | "if" Expressao "then" "{" Comando "}" "else" "{" Comando "}" |
IO |
PIO()
IO ::= "write" "(" Expressao ")" | "read" "(" Id ")" |
LeftExpression |
PLeftExpression()
LeftExpression ::= Id | AcessoAtributo |
LeftExpression |
PLeftExpressionChamadora()
LeftExpressionChamadora ::= AcessoAtributoChamador | AcessoAtributoThis | id |
ListaDeclaracaoParametro |
PListaDeclaracaoParametro()
ListaDeclaracaoParametro ::= Tipo Id | Tipo Id "," ListaDeclaracaoParametro |
ListaExpressao |
PListaExpressao()
ListaExpressao ::= Expressao | Expressao "," ListaExpressao |
Expressao |
PListaExpressaoAtomica()
...Expressao |
ListaExpressao |
PListaExpressaoComposta()
... |
NewOO2 |
PNew()
New ::= LeftExpression ":=" "new" Id |
Programa |
PPrograma()
Programa ::= "{" DecClasse ";" Comando "}" |
Read |
PRead()
... |
Programa |
processaEntrada()
Método chamado com o intuito de processar a entrada fornecida ao parser gerando objeto do tipo Programa. |
SimplesDecVariavel |
PSimplesDecVariavel()
... |
Skip |
PSkip()
Skip::= |
Super |
PSuper()
... super |
This |
PThis()
... this |
Tipo |
PTipo()
Tipo ::= TipoClasse | TipoPrimitivo |
Tipo |
PTipoClasse()
TipoClasse ::= Id |
Tipo |
PTipoPrimitivo()
TipoPrimitivo ::= "string" | "int" | "boolean" |
Valor |
PValor()
Valor ::= ValorInteiro | ValorNull | ValorBooleano | ValorString |
Valor |
PValorBooleano()
... |
Valor |
PValorInteiro()
... |
ValorNull |
PValorNull()
... |
Valor |
PValorString()
... |
While |
PWhile()
While ::= "while" Expressao do" "{" Comando "}" |
Write |
PWrite()
... |
void |
ReInit(java.io.InputStream stream)
|
void |
ReInit(java.io.InputStream stream,
java.lang.String encoding)
|
void |
ReInit(OO2ParserTokenManager 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 OO2ParserTokenManager token_source
public Token token
public Token jj_nt
public boolean lookingAhead
Constructor Detail |
---|
public OO2Parser(java.io.InputStream stream)
public OO2Parser(java.io.InputStream stream, java.lang.String encoding)
public OO2Parser(java.io.Reader stream)
public OO2Parser(OO2ParserTokenManager 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() throws ParseException
ParseException
public final Sequencial PComandoSequencial() throws ParseException
ParseException
public final Comando PComandoSimples() throws ParseException
ParseException
public final Skip PSkip() throws ParseException
ParseException
public final ComDeclaracao PComDeclaracao() throws ParseException
ParseException
public final While PWhile() throws ParseException
ParseException
public final IfThenElse PIfThenElse() throws ParseException
ParseException
public final ChamadaMetodoOO2 PChamadaMetodo() throws ParseException
ParseException
public final ListaExpressao PListaExpressao() throws ParseException
ParseException
public final ListaExpressao PListaExpressaoComposta() throws ParseException
ParseException
public final Expressao PListaExpressaoAtomica() throws ParseException
ParseException
public final NewOO2 PNew() throws ParseException
ParseException
public final Cast PCast() throws ParseException
ParseException
public final AtribuicaoOO2 PAtribuicao() throws ParseException
ParseException
public final IO PIO() throws ParseException
ParseException
public final Read PRead() throws ParseException
ParseException
public final Write PWrite() throws ParseException
ParseException
public final Expressao PExpressao() throws ParseException
ParseException
public final Expressao PExpPrimaria() 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() throws ParseException
ParseException
public final Expressao PExpMenos() throws ParseException
ParseException
public final Expressao PExpNot() throws ParseException
ParseException
public final Expressao PExpLength() throws ParseException
ParseException
public final Expressao PExpBinaria() throws ParseException
ParseException
public final This PThis() throws ParseException
ParseException
public final Super PSuper() throws ParseException
ParseException
public final LeftExpression PLeftExpression() throws ParseException
ParseException
public final Id PId() throws ParseException
ParseException
public final AcessoAtributo PAcessoAtributo() throws ParseException
ParseException
public final AcessoAtributoThis PAcessoAtributoThis() throws ParseException
ParseException
public final AcessoAtributoSuper PAcessoAtributoSuper() throws ParseException
ParseException
public final AcessoAtributoId PAcessoAtributoId() throws ParseException
ParseException
public final Expressao PExpressaoChamadora() throws ParseException
ParseException
public final LeftExpression PLeftExpressionChamadora() throws ParseException
ParseException
public final AcessoAtributoId PAcessoAtributoIdChamador() throws ParseException
ParseException
public final DecClasse PDecClasse() throws ParseException
ParseException
public final DecClasse PDecClasseAtomica() throws ParseException
ParseException
public final DecClasseComposta PDecClasseComposta() throws ParseException
ParseException
public final DecVariavel PDecVariavel() throws ParseException
ParseException
public final CompostaDecVariavel PCompostaDecVariavel() throws ParseException
ParseException
public final DecVariavel PDecVariavelAtomica() throws ParseException
ParseException
public final DecVariavelObjeto PDecVariavelObjeto() throws ParseException
ParseException
public final SimplesDecVariavel PSimplesDecVariavel() throws ParseException
ParseException
public final DecConstrutor PDecConstrutor() 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 java.lang.String PDecModificador() 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.InputStream stream, java.lang.String encoding)
public void ReInit(java.io.Reader stream)
public void ReInit(OO2ParserTokenManager 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 |