Cours complet sur ATL (ATLAS Transformation Language) : les tuples
Dans l'article précédent :
https://www.urbanisation-si.com/cours-complet-sur-atl-atlas-transformation-language-les-enumerations
nous avion abordé les énumérations ATL. Voyons à présent les tuples.
Le type tuple
Le type tuple permet de mettre plusieurs valeurs dans une seule variable.
Un tuple est constitué de champs nommés pouvant avoir des types différents.
ATTENTION : un tuple type n’est pas nommé, donc à chaque fois que l’on doit l’identifier, il faut mentionner sa déclaration au complet !
La declaration d’un tuple :
L’ordre de declaration n’est pas significatif.
Exemple de déclaration :
L’instanciation d’une variable tuple :
Les 2 instanciations de tuple suivantes sont équivalentes :
Pour accéder à un memebre du tuple :
Le type tuple possède une operation asMap() renvoyant une map dans laquelle les noms des champs du tuple sont associés avec leurs valeurs respectives.
Le type Map
Ce type a été ajouté dans ATL et n’existe pas dans OCL. Il est identique à la classe Map de Java. Chaque valeur est associée à une unique clé d’accès.
La declaration suit la syntaxe suivante :
Comme pour le tuple, un type map n’est pas nommé, ce qui oblige à répêter la declaration complete à chaque que l’on veut y faire référence.
L’instantiating suit la syntaxe :
Exemple :
Le type map possède les operations suivantes :
- get(key : oclAny) renvoie la valeur associée à key (ou OclUndefined si key n’est pas une clé de self);
- including(key : oclAny, val : oclAny) renvoie une copie de self dans laquelle le couple ( key, val) a été inséré à la condition que key ne soit pas déjà une clé de self
- union(m : Map) renvoie une map contenant tous les éléments de self auxquels sont ajoutés les éléments de m à condition que leurs clés n’existent pas dans self
- getKeys() renvoie un set contenant toutes les clés de self
- getValues()renvoie un bag contenant toutes les valeurs de self
Une robe de femme, doit être comme une plaidoirie : assez longue pour couvrir le sujet, assez courte pour être suivie.
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/
A découvrir aussi
- Ingénierie Dirigée par les Modèles : le saint graal de la génération de code
- Ingénierie Dirigée par les Modèles (IDM) : cours complet sur ATL (ATLAS Transformation Language) : librairie ATL
- Cours complet sur ATL (ATLAS Transformation Language) : les types primitifs
Inscrivez-vous au site
Soyez prévenu par email des prochaines mises à jour
Rejoignez les 786 autres membres