bob.expression
Class TExprEvalFoncListe

java.lang.Object
  extended by bob.elementB.TElementB
      extended by bob.expression.TExpression
          extended by bob.expression.TExprEvalFoncListe

public class TExprEvalFoncListe
extends TExpression

La classe TExprEvalFoncListe contient les informations contenues dans une évaluation de fonction ayant plusieurs arguments. Elle concerne:

- l'union et l'intersection généralisées
- la première et la deuxième projection (prj1, prj2)
- l'itération n fois (iterate(R, n))
- la construction d'arbre (const(x,q))
- les expressions de noeuds d'arbres (rank, father, son, subtree, arity)
- l'arbre binaire en extension (bin)

La plupart des fonctions sont binaires ("son" est ternaire, "bin" peut etre unaire ou ternaire). On devrait donc changer la modélisation.

Syntaxe B:

TExpression(TElementB, TElementB[, TElementB])

Version:
1.0 du 22/06/2001
Author:
Frédéric Chatel
See Also:
TExpression

Constructor Summary
TExprEvalFoncListe(TExpression fonc, java.util.Vector<TExpression> liste_arg)
          Constructeur paramétré qui initialise les attributs avec les entrées de l'utilisateur.
 
Method Summary
 void Afficher(java.io.Writer flux_sortie)
          Affiche une évaluation de fonction ayant plusieurs arguments.
 tatibouet.bparser.Noeud ConstruireNoeud()
          Construit un Noeud Tatibouet à partir d'une évaluation de fonction ayant plusieurs arguments.
 TExpression DonnerFonction()
          Donne la fonction utilisée.
 java.util.Vector<TExpression> DonnerListeArg()
          Donne la liste des arguments de la fonction.
 TElementB Dupliquer()
          Renvoie la copie conforme de l'element courant clone sur toute sa hauteur
 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.
 TExpression Simplifier()
          Simplifie une Evaluation de fonction.
 
Methods inherited from class bob.expression.TExpression
EstSyntaxEgal
 
Methods inherited from class bob.elementB.TElementB
Afficher, RemplacerMultiple
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TExprEvalFoncListe

public TExprEvalFoncListe(TExpression fonc,
                          java.util.Vector<TExpression> liste_arg)
Constructeur paramétré qui initialise les attributs avec les entrées de l'utilisateur.

Parameters:
fonc - Fonction à utiliser.
liste_arg - Liste des arguments.
Method Detail

Dupliquer

public TElementB Dupliquer()
Renvoie la copie conforme de l'element courant clone sur toute sa hauteur

Overrides:
Dupliquer in class TElementB
Returns:
un clone integral de l'element B courant

DonnerFonction

public TExpression DonnerFonction()
Donne la fonction utilisée.

Returns:
La fonction utilisée.

DonnerListeArg

public java.util.Vector<TExpression> DonnerListeArg()
Donne la liste des arguments de la fonction.

Returns:
La liste des arguments qui peuvent etre des expressions ou des prédicats.

ListeDesNomsLibres

public java.util.Vector<TExprIdentificateur> ListeDesNomsLibres()
Renvoie la liste des identificateurs libres dans un predicat, une expression ou une substitution.

Overrides:
ListeDesNomsLibres in class TElementB
Returns:
un vecteur dont chaque element est un Tidentificateur libre.

Remplacer

public TElementB Remplacer(TExprIdentificateur Id,
                           TExpression e)
Remplace un identificateur non libre dans l'élément B courant par une expression donnee.

Overrides:
Remplacer in class TElementB
Parameters:
Id - : l'identificateur a remplacer
e - : la nouvelle expression
Returns:
Si Id est non libre dans l'element B courant alors toutes ses iterations sont remplacees par e Sinon : L'element B courant est renvoye non modifie

Afficher

public void Afficher(java.io.Writer flux_sortie)
              throws java.io.IOException,
                     java.io.FileNotFoundException
Affiche une évaluation de fonction ayant plusieurs arguments.

Overrides:
Afficher in class TElementB
Parameters:
flux_sortie - Flux de sortie: fichier de type FileWriter ou terminal(new PrintWriter(System.out)).
Throws:
java.io.IOException
java.io.FileNotFoundException

ConstruireNoeud

public tatibouet.bparser.Noeud ConstruireNoeud()
Construit un Noeud Tatibouet à partir d'une évaluation de fonction ayant plusieurs arguments.

Overrides:
ConstruireNoeud in class TElementB
Returns:
Noeud

Simplifier

public TExpression Simplifier()
Simplifie une Evaluation de fonction. Méthode de Nicolas Stouls.

Overrides:
Simplifier in class TExpression
Returns:
Renvoie l'expression completement simplifiée.


Copyright OB.