Maison > développement back-end > Golang > Comment puis-je découvrir les types exportés à partir de packages Go externes ?

Comment puis-je découvrir les types exportés à partir de packages Go externes ?

Patricia Arquette
Libérer: 2024-12-30 05:40:09
original
344 Les gens l'ont consulté

How Can I Discover Exported Types from External Go Packages?

Découverte de types définis dans des packages externes

Dans Go, les définitions de types sont exportées lorsque leurs noms commencent par des lettres majuscules. Pour accéder à ces types à partir d'un autre package, vous pouvez utiliser le package go/importer.

Solution :

package main

import (
    "fmt"

    "go/importer"

    demo "example.com/path/to/demo" // import the package containing the types
)

func main() {
    pkg, err := importer.Default().Import("example.com/path/to/demo")
    if err != nil {
        fmt.Println("error:", err)
        return
    }

    // Get the names of all exported types in the package
    for _, declName := range pkg.Scope().Names() {
        fmt.Println(declName)
    }
}
Copier après la connexion

Ce code imprimera la sortie suivante, qui répertorie les noms des types exportés définis dans le package de démonstration :

People
UserInfo
Copier après la connexion

Remarque : Utilisation de go/importer sur le Go Playground peut entraîner une erreur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal