DecVariavel.java

Go to the documentation of this file.
00001 package plp.functional1.declaration;
00002 
00003 import plp.expressions1.util.Tipo;
00004 import plp.expressions2.expression.Expressao;
00005 import plp.expressions2.expression.Id;
00006 import plp.expressions2.memory.AmbienteCompilacao;
00007 import plp.expressions2.memory.VariavelJaDeclaradaException;
00008 import plp.expressions2.memory.VariavelNaoDeclaradaException;
00009 
00010 public class DecVariavel implements DeclaracaoFuncional {
00011         private Id id;
00012         private Expressao expressao;
00013 
00014         public DecVariavel(Id idArg, Expressao expressaoArg) {
00015                 id = idArg;
00016                 expressao = expressaoArg;
00017         }
00018         public int getAridade() {
00019                 return 0;
00020         }
00021 
00027         public String toString() {
00028                 StringBuffer sb = new StringBuffer();
00029                 sb.append("var ");
00030                 sb.append(id.toString());
00031                 sb.append(" = ");
00032                 sb.append(expressao.toString());
00033                 return sb.toString();
00034         }
00035 
00036         public Expressao getExpressao() {
00037                 return expressao;
00038         }
00039 
00040         public Id getID() {
00041                 return id;
00042         }
00043 
00057         public Tipo getTipo(AmbienteCompilacao amb)
00058                 throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException {
00059                 return expressao.getTipo(amb);
00060         }
00061 
00073         public boolean checaTipo(AmbienteCompilacao ambiente)
00074                 throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException {
00075                 return expressao.checaTipo(ambiente);
00076         }
00077 
00078 }

Generated on Tue Sep 12 21:52:02 2006 for PLP by  doxygen 1.4.7