|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbob.elementB.TElementB
bob.substitution.TSubstitution
bob.substitution.TSubBoucle
public class TSubBoucle
La classe TSubBoucle contient les informations sur une boucle.
C'est une substitution généralisée primitive.
Syntaxe B:
WHILE TPredicat THEN
TSubstitution
INVARIANT
TPredicat
VARIANT
TExpression
END
ATTENTION: La méthode Convertir() ne convertit que le corps de la boucle.
et CalculerWP(R) est à modifier pour la liste de variables quantifiées.
TSubstitution
,
TPredicat
,
TExpression
Field Summary |
---|
Fields inherited from class bob.substitution.TSubstitution |
---|
Primitive |
Constructor Summary | |
---|---|
TSubBoucle(TPredicat p,
TSubstitution s,
TPredicat i,
TExpression v)
Constructeur paramétré qui initialise les attributs avec les informations données par l'utilisateur. |
Method Summary | |
---|---|
void |
Afficher(java.io.Writer flux_sortie)
Affiche une boucle. |
void |
Afficher(java.io.Writer flux_sortie,
int niveau)
Affiche une boucle avec presentation. |
TPredicat |
CalculerWP(TPredicat post_cond)
Calcule la plus faible précondition [WHILE P DO S INVARIANT I VARIANT V END]R. |
tatibouet.bparser.Noeud |
ConstruireNoeud()
Construit un Noeud Tatibouet à partir d'une boucle |
TSubstitution |
Convertir()
Convertit le corps de la boucle uniquement. |
TSubstitution |
DonnerDo()
Donne la substitution introduite par le mot-clé DO. |
TPredicat |
DonnerInvariant()
Donne le prédicat introduit par le mot-clé INVARIANT. |
TExpression |
DonnerVariant()
Donne l'expression introduite par le mot-clé VARIANT. |
TPredicat |
DonnerWhile()
Donne le prédicat introduit par le mot-clé WHILE. |
TElementB |
Dupliquer()
Renvoie la copie de l'élément courant cloné sur toute sa hauteur |
boolean |
EstSubMachine()
Teste si la boucle est une substitution de machine |
java.util.Vector<TExprIdentificateur> |
ListeDesNomsLibres()
Renvoie la liste des identificateurs libres dans un predicat, une expression ou une substitution. |
TElementB |
Remplacer(TExprIdentificateur Id,
TExpression e)
Remplace un identificateur non libre dans l'élément B courant par une expression donnee. |
TSubstitution |
RemplacerAppelOp()
Remplace l'appel d'opération Auteur: Olivier BERT |
TSubstitution |
Simplifier()
Simplifie la substitution. |
TSubstitution |
TraiterAssertSansRenommage(java.util.Vector<TExprIdentificateur> vv,
java.util.Vector<TPredicat> PP)
Aplatissement pour traiter AssertSansRenommage. |
Methods inherited from class bob.substitution.TSubstitution |
---|
CalculerGarde, CalculerTermin, EstPrimitive |
Methods inherited from class bob.elementB.TElementB |
---|
RemplacerMultiple |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public TSubBoucle(TPredicat p, TSubstitution s, TPredicat i, TExpression v)
p
- Prédicat introduit par le mot-clé WHILE.s
- Subsitution introduite par le mot-clé DO.i
- Invariant de la boucle.v
- Variant de la boucle.Method Detail |
---|
public TPredicat DonnerWhile()
public TSubstitution DonnerDo()
public TPredicat DonnerInvariant()
public TExpression DonnerVariant()
public TElementB Dupliquer()
Dupliquer
in class TElementB
public TSubstitution RemplacerAppelOp()
RemplacerAppelOp
in class TSubstitution
public TSubstitution TraiterAssertSansRenommage(java.util.Vector<TExprIdentificateur> vv, java.util.Vector<TPredicat> PP)
TraiterAssertSansRenommage
in class TSubstitution
public TSubstitution Simplifier()
Simplifier
in class TSubstitution
TSubPrecondition
public boolean EstSubMachine()
EstSubMachine
in class TSubstitution
public java.util.Vector<TExprIdentificateur> ListeDesNomsLibres()
ListeDesNomsLibres
in class TElementB
public TElementB Remplacer(TExprIdentificateur Id, TExpression e)
Remplacer
in class TElementB
Id
- : l'identificateur a remplacere
- : la nouvelle expression
public TSubstitution Convertir()
Convertir
in class TSubstitution
public TPredicat CalculerWP(TPredicat post_cond)
CalculerWP
in class TSubstitution
post_cond
- Postcondition vérifiée après la fin de la substitution "boucle".
public void Afficher(java.io.Writer flux_sortie) throws java.io.IOException, java.io.FileNotFoundException
Afficher
in class TElementB
flux_sortie
- Flux de sortie: fichier de type FileWriter ou terminal(new PrintWriter(System.out)).
java.io.IOException
java.io.FileNotFoundException
public void Afficher(java.io.Writer flux_sortie, int niveau) throws java.io.IOException, java.io.FileNotFoundException
Afficher
in class TElementB
flux_sortie
- Flux de sortie: fichier de type FileWriter ou terminal(new PrintWriter(System.out)).niveau
- : un entier qui indique le niveau de tabulation.
java.io.IOException
java.io.FileNotFoundException
public tatibouet.bparser.Noeud ConstruireNoeud()
ConstruireNoeud
in class TElementB
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |