"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment récupérer toutes les structures d’un package Go ?

Comment récupérer toutes les structures d’un package Go ?

Publié le 2024-11-14
Parcourir:732

How to Retrieve All Structs within a Go Package?

Récupération de toutes les structures dans un package Go

Dans Go, il est possible d'énumérer toutes les structures définies dans un package spécifique. Pour ce faire, la solution la plus efficace consiste à analyser les fichiers sources Go, à extraire l'arbre de syntaxe abstraite (AST) et à isoler les instances ast.StructType.

La commande hg peut être utilisée pour cloner les sources Go :

hg clone https://code.google.com/p/go/

Par la suite, vous pouvez isoler les instances ast.StructType en analyser les fichiers sources. Voici un exemple fourni par linter go/lint qui montre comment extraire les noms de champs de structure :

    case *ast.StructType:
        for _, f := range v.Fields.List {
            for _, id := range f.Names {
                check(id, "struct field")
            }
        }

En analysant l'AST et en extrayant les instances ast.StructType, vous pouvez obtenir une liste de toutes les structures du package spécifié.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3