urbanisation-si.com

urbanisation-si.com

Ingénierie Dirigée par les Modèles (IDM) : cours complet sur ATL (ATLAS Transformation Language) : les types ATL

cours-complet-ATL-atlas-transformation-language-les-types-atl.png

 

Dans l'article précédent :

https://www.urbanisation-si.com/ingenierie-dirigee-par-les-modeles-idm-cours-complet-sur-atl-atlas-transformation-language-librairie-atl

nous avion abordé la dernière unité ATL, la librairie.

 

Abordons maintenant les outils sur les types mis à notre disposition par ATL.

L'appel à des opérations (méthodes) se fait comme en OCL, c'est à dire à partir du contexte d'une instance d'un type spécifique. ATL reprend le même mot clé self qu'en OCL pour se référer à cette instance de contexte.

 

Les opérations de la classe OclType

Cette classe OCL correspond à la définition des types d'instances.

  • allInstances() : renvoi l'ensemble des instances du type de l'instance courante self
  • allInstancesFrom(model : String) : retourne l'ensemble des instances de type self définies dans le modèle identifié par le paramètre model
  • opérateur de comparaison : =, <>;
  • oclIsUndefined() renvoie vrai si self n'est pas défini
  • oclIsKindOf(t : oclType)  renvoie vrai si self est soit une instance de t ou d'un des sous-type de t
  • oclIsTypeOf(t : oclType) renvoie vrai si self est soit une instance de t 
  • toString() renvoie self sous forme de chaîne de caractères
  • oclType() renvoie le oclType de self
  • asSequence(), asSet(), asBag() renvoie une sequence, un set ou un bag contenant self. Ces opérations sont redéfinies pour les types collection
  • output(s : String) écrit sur la console Eclipse, à utiliser obligatoirement dans les blocs  impératifs ATL 
  • debug(s : String) renvoie la valeur de self et écrit la chaîne "s : self_value" dans le console Eclipse
  • refSetValue(name : String, val : oclAny)  opération réflexive permettant d'affecter à l'instance self identifiée par name la valeur val. Renvoie self
  • refGetValue(name : String) opération réflexive renvoyant la valeur de self identifié par name
  • refImmediateComposite() opération réflexive renvoyant le composite (conteneur) de self
  • refInvokeOperation(opName : String, args : Sequence) opération réflexive permettant d'invoquer une opération de self nommée opName avec les paramètres contenus dans la séquence args

 

"Rien ne vous emprisonne excepté vos pensées. Rien ne vous limite excepté vos peurs. Et rien ne vous contrôle excepté vos croyances."
Marianne Williamson

 

Voir aussi :  

 

http://urbanisation-si.wix.com/blog

http://urbanisme-si.wix.com/blog

http://urbanisation-si.wix.com/urbanisation-si

http://urbanisation-si.over-blog.com/

http://rhonamaxwel.over-blog.com/

http://urbanisation-des-si.blogspot.fr/

http://bonnes-pratiques-si.eklablog.com/

http://urbanisation-si.eklablog.com/



24/09/2015
3 Poster un commentaire

A découvrir aussi


Inscrivez-vous au site

Soyez prévenu par email des prochaines mises à jour

Rejoignez les 705 autres membres