IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tcl/Tk Discussion :

Lister les procédures d'un namespace à partir d'un autre


Sujet :

Tcl/Tk

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 18
    Points : 50
    Points
    50
    Par défaut Lister les procédures d'un namespace à partir d'un autre
    Bonjour

    Les mois passent et je hais toujours autant voir de plus en plus ce foutu langage...

    J'aurais besoin d'un coup de main pour savoir comment je pourrais lister rapidement les procédures déclarées dans un espace nominal à partir d'un autre.
    Concrètement, je suis dans le namespace global et voudrais savoir quelles procédures existent dans le namespace ::machin::truc par exemple. J'ai essayé ça, aucun ne marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach el [lsort [info commands ::machin::truc]] {Log "  $el"}
    foreach el [lsort [info commands ::machin::truc::]] {Log "  $el"}
    foreach el [lsort [info commands machin::truc]] {Log "  $el"}
    foreach el [lsort [info commands machin::truc::]] {Log "  $el"}
    Ensuite ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set skrpt {foreach el [lsort [info commands machin::truc::]] {Log "  $el"}}
    namespace inscope machin::truc $skrpt
    et ses 15 autres variations mais rien ne marche...

    Je commence à croire que c'est limite normal avec ce langage...

    ______________________________________________

    Bon j'ai trouvé un truc qui me convient amplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    namespace eval machin::truc { foreach el [lsort [info procs]] {Log "  $el"} }

  2. #2
    Membre à l'essai
    Homme Profil pro
    -
    Inscrit en
    Novembre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : -

    Informations forums :
    Inscription : Novembre 2015
    Messages : 8
    Points : 13
    Points
    13
    Par défaut
    Juste au cas ou des gens se posent la même question, il manquait le "*" pour spécifier le pattern du namespace. Donc, la version propre est :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach el [lsort [info commands ::machin::truc::*]] {Log "  $el"}

    ou, si on ne veut que les procédures Tcl :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach el [lsort [info procs ::machin::truc::*]] {Log "  $el"}

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. lister les procédures stockées
    Par vince2005 dans le forum Administration
    Réponses: 7
    Dernier message: 31/12/2009, 00h14
  2. [WD14] Lister les procédures stockées d'une analyse
    Par Bowen dans le forum WinDev
    Réponses: 8
    Dernier message: 12/11/2009, 10h42
  3. Lister les procédures d'un classeur
    Par Daejung dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 07/10/2008, 23h00
  4. changer les paramètre d'un frame à partir d'un autre
    Par kenzouza dans le forum JBuilder
    Réponses: 3
    Dernier message: 06/03/2007, 13h31
  5. [VB.NET] Activer procédure d'une form à partir d'une autre
    Par ricil78 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 02/05/2004, 14h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo