J'ai un grand nombre de modèles différents définis dans mon code TTCN-3. Par souci de simplicité concentrons-nous sur l'exemple ci-dessous:Fusionner deux objets en TTCN-3
type record Action {
charstring name,
charstring param optional,
charstring state optional
}
template Action actionTemplate(param := *, state := *) {
name := "Template",
param := param,
state := state
}
var Action actOne := {"Name", omit, "OK"};
template Action actTwo := actionTemplate(state := "NOT OK");
Y at-il une possibilité de parcourir les champs de actTwo, vérifier s'il y a une valeur définie et mise à jour le champ correspondant à actOne? Je voudrais le faire de manière générique, car je ne connais pas toujours la structure exacte des sous-champs du modèle.
Existe-t-il une possibilité d'itérer sur des champs de modèle comme itérer sur, par ex. dict en Python où nous avons des clés et des valeurs correspondantes?
À ce stade, j'ai décidé d'écrire un plugin (lib partagé) en C++ pour TTCN-3, qui prend un objet et un modèle, parcourir le modèle et mettre à jour les champs d'objet. Je vais vérifier s'il est possible de faire la même chose avec votre solution. –