Déclarations
Les instructions suivantes sont évaluées tout en parsant le fichier de modèle SPL. Elles ne sont pas touchées par les instructions de contrôle du flux comme des conditions, des boucles ou des sous-routines, et sont toujours évaluées exactement une seule fois.
Ces mots-clé, comme tous les mots-clé dans SPL, ne sont pas sensibles à la casse.
Veuillez noter que toutes ces déclarations doivent se trouver dans un bloc délimité par des crochets.
map ... to ...
map mapname key to value [, key to value ]...
Cette instruction ajoute des informations dans un mappage. Voir ci-dessous pour des utilisations spécifiques.
map schemanativetype schematype to typespec
Le type de Schéma XML built-in spécifié sera mappé dans le type natif spécifié ou la classe, en utilisant le formateur spécifié. Ce paramètre s'applique uniquement à la génération de code pour la version 2007r3 et plus. Typespec est un type natif ou un nom de classe, suivi par une virgule, suivi par l'instance de classe de formateur.
Exemple :
map schemanativetype "double" en "double,Altova::DoubleFormatter"
map type ... to ...
map type schematype to classname
Le type de Schéma XML built-in spécifié sera mappé dans la classe spécifiée. Ce paramètre s'applique uniquement à la génération de code pour la version 2007 ou en-dessous.
Exemple :
map type "float" to "CSchemaFloat"
default ... is ...
default setting is value
Cette instruction vous permet de toucher la manière dont les noms de classe et de membre sont dérivés depuis le Schéma XML. Veuillez noter que les noms de paramètre sont sensibles à la casse.
Exemple :
default "InvalidCharReplacement" is "_"
Nom du paramètre
Explication
ValidFirstCharSet
Les caractères autorisés pour lancer un identifiant
ValidCharSet
Les caractères autorisés pour d'autres caractères dans un identifiant
InvalidCharReplacement
Le caractère qui remplacera tous les caractères dans les noms qui ne se trouvent pas dans ValidCharSet
AnonTypePrefix
Préfixe pour les noms des types anonymes*
AnonTypeSuffix
Suffixe pour les noms des types anonymes*
ClassNamePrefix
Préfixe pour des noms de classe générés
ClassNameSuffix
Suffixe pour les noms de classe générés
EnumerationPrefix
Préfixe pour les constantes symboliques déclarées pour les valeurs d'énumération
EnumerationUpperCase
"on" pour convertir les noms de constante d'énumération pour la casse majuscule
FallbackName
Si un nom consiste uniquement en caractères qui ne sont pas dans ValidCharSet, utiliser celui-là
* Les noms des types anonymes sont construits à partir de AnonTypePrefix + nom d'élément + AnonTypeSuffix
reserve
reserve word
Ajoute le mot spécifié pour la liste des mots réservés. Cela garantit qu'il ne sera jamais généré en tant que classe ou de nom de membre.
Exemple :
reserve "while"
include
Inclut le fichier spécifié en tant que source SPL. Cela vous permet de partager votre modèle dans plusieurs fichiers pour une édition et une gestion plus simple.
include filename
Exemple :
include "Module.cpp"