我正在构建一个转译器,需要了解 protobuf/go 范围查找系统。我一直在尝试用谷歌搜索文档,但没有找到任何运气。
问:在 Go/protobufs 中导入类型时,是否可以进行共享包范围查找?
这是我质疑的例子:
原型1:
package cosmos.crypto.keyring.v1;
...
message Ledger {
hd.v1.BIP44Params path = 1;
}
原型2:
package cosmos.crypto.hd.v1;
message BIP44Params {
...
}
到目前为止,我看到有两种语法确实有意义:
全范围
message Ledger {
cosmos.crypto.hd.v1.BIP44Params path = 1;
}
或者我也见过这样的版本
完全没有作用域
message Ledger {
BIP44Params path = 1;
}
部分范围?
但我看到的风格是部分范围
message Ledger {
hd.v1.BIP44Params path = 1;
}
他们离开的原因是cosmos.crypto因为这两个包共享cosmos.crypto包名的根目录吗?
还是基于导入的更通用的范围查找?
任何见解或阅读链接表示赞赏:)
青春有我
相关分类