Go 结构/标签语法

标签 go struct tagging

我正在寻找以下语法的解释:

type GetBucketTaggingInput struct {
    _ struct{} `locationName:"GetBucketTaggingRequest" type:"structure"`

    // The name of the bucket for which to get the tagging information.
    //
    // Bucket is a required field
    Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
}

具体来说,这一行:

_ struct{} `locationName:"GetBucketTaggingRequest" type:"structure"`

我知道标签是元数据,但在此上下文中如何使用元数据? 另外,我不明白:

_ struct{}

关于 Bucket 变量,我再次不确定是否需要除必填字段之外的元数据。

顺便说一下,这是来自 AWS Go SDK。

谢谢!

最佳答案

AWS 开发工具包使用 _ struct{} 指定结构的元数据。

_blank identifier .

struct{} 是没有字段的匿名结构类型。该值的大小为零。

locationName:"GetBucketTaggingRequest"type:"struct"field tag .

SDK 使用 reflect包来查找字段 _ 的标记。

关于Go 结构/标签语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62950068/

相关文章:

c - 在c中读取二进制文件直到文件末尾

Flask-SQLAlchemy 使用多个必需标签查询多对多标签

go - golang 中是否有惯用的作用域语义?

go - 如何将 2 个文件合并或组合成单个文件

c - union 内部的 2 个结构,来自头文件

Python:如何计算句子中的pos标签?

nlp - 文档分析和标记

pointers - Go指针交换问题

go - 具有多个模块的 mono-repos 中是否有 Go 模块名称的约定?

c++ - 不同结构的静态大小数组