addgateway
Ajoute dynamiquement des builtins au moment de l'execution.
📝Syntaxe
addgateway(dyn_lib_path)
addgateway(dyn_lib_path, mode)
addgateway(dyn_lib_path, module_name, mode)
📥Arguments d'entrée
Paramètre Description
dyn_lib_path chaine : chemin d'une bibliotheque dynamique preparee pour Nelson.
mode chaine : auto utilise le cache gateway et le lazy-loading quand c'est possible, loaded force le chargement immediat.
📄Description

addgateway(dyn_lib_path) ajoute dynamiquement des builtins au moment de l'execution.

La bibliotheque dynamique doit fournir GetGatewayDescriptor et AddGateway.

Par defaut, le mode auto enregistre les builtins lazy depuis le cache quand c'est possible. Utiliser loaded force le chargement immediat de la bibliotheque dynamique.

Les descriptors de gateway sont stockes dans un cache unique, prefdir()/gateway_cache.json. Nelson reconstruit automatiquement l'entree du cache quand la bibliotheque dynamique est modifiee.

Definir NELSON_GATEWAY_TRACE=1 affiche les decisions de cache et de chargement des gateways. Definir NELSON_GATEWAY_FORCE_LOADED=1 force le chargement immediat de toutes les gateways.

Si la gateway est deja chargee, aucune erreur ni avertissement ne sera leve.

💡Exemples
Ajouter la gateway pour le module time :
addgateway(modulepath('time', 'builtin'), 'loaded')
🔗Voir aussi
removegatewaygatewayinfo
🕔Historique des versions
Version Description
1.0.0 version initiale
Modifier cette page sur GitHub