|
Poseidon for UMLTM UMLdoc
|
|
plp.functional1.expression
Class IfThenElse
- public class IfThenElse
- Classe que implementa uma expressão if-then-else.
 | Association Detail |
|
condicao
Expressao condicao
Expressão que denota a condição (if).
then
Expressao then
Expressão que denota a conseqüência (then).
elseExpressao
Expressao elseExpressao
Expressão que denota o else.
 | Constructor Detail |
|
IfThenElse
public
IfThenElse
IfThenElse(
Expressao teste
,
Expressao thenExpressao
,
Expressao elseExpressao
)
Constroi um objeto desta classe a partir de três expressões.
- Parameters:
-
teste
- expressão que será considerado o if
-
thenExpressao
- teste expressão que será considerado o then
-
elseExpressao
- teste expressão que será considerado o else
 | Method Detail |
|
avaliar
public
Valor
avaliar(
AmbienteExecucao ambiente
)
Retorno o valor após a avaliação das expressões associadas.
- Parameters:
-
ambiente
- ambiente de execução
- Returns:
-
valor da expressão
- Throws:
-
VariavelNaoDeclaradaException
-
-
VariavelJaDeclaradaException
-
getCondicao
public
Expressao
getCondicao()
Retorna a condção.
- Returns:
-
Expressao
getElseExpressao
public
Expressao
getElseExpressao()
Retorna o else.
- Returns:
-
Expressao
getThen
public
Expressao
getThen()
Retorno o then.
- Returns:
-
Expressao
inferirTipo
public
Tipo
inferirTipo(
AmbienteCompilacao ambiente
,
Substituicao phi
)
Realiza a verificacao de tipos desta expressao. O metodo verifica se o tipo do
if unifica com o tipo TipoBooleano e se os tipos do then e do else unificam entre si.
- Parameters:
-
ambiente
- ambiente que contem os mapeamentos de identificadores e tipos
-
phi
- substituicao acumulada
ErroTipoException caso a expressao nao esteja corretamente tipada
- Returns:
-
tipo da expressao
- Throws:
-
ErroTipoException
-
toString
public
String
toString()
Retorna texto representando um objeto desta classe.
Created 2003 - 7 - 22
|
Poseidon for UMLTM UMLdoc
|
|
Generated with Poseidon for UMLTM.
Poseidon is a registered trademark of Gentleware AG in Germany, USA and other countries.
Copyright 2001 Gentleware AG, Vogt-Kölln-Str.30, 22527 Hamburg, Germany. All Rights Reserved.
UML is a trademark or registered trademark of Object Management Group, Inc. in the U.S. and other countries.