文件名称:proteus:从Go源代码生成.proto文件
文件大小:80KB
文件格式:ZIP
更新时间:2024-02-24 08:12:21
go protobuf grpc protobuf3 GoGo
注意:该存储库已被放弃,不会在代码库上进行进一步的更新,也不会回答或参与问题/ PR。 /proʊtiəs/是从Go的结构,类型和函数中生成与协议缓冲区版本3兼容的.proto文件的工具。 该库背后的动机是将Go用作模型的真实来源,而不是相反,然后从.proto文件生成Go代码,该文件不会生成惯用代码。 Proteus扫描选定软件包中的所有代码,并为每个导出的结构(以及未导出的所有其他结构中引用的所有结构)生成protobuf消息。 Go中在语义上用作枚举的类型将转换为适当的protobuf枚举。 所有导出的函数和方法都将转换为protobuf RPC服务。 我们希望以一种非常可扩展的方式构建proteus,因此这一代的每一步都可以通过插件进行黑客攻击,每个人都可以根据自己的需求调整proteus,而不必实际集成不能与核心库很好地兼容的功能。 Go 1.8发布后,我们将发布插件功能,其中包括标准库的plugin包。 有关代码体系结构的总体概述,请参阅体系。 您可以在了解更多有关构建蛋白质的动机。 安装 go get -v gopkg.in/src-d/proteus.v1
【文件预览】:
proteus-master
----resolver()
--------resolver.go(6KB)
--------resolver_test.go(7KB)
----.gitignore(291B)
----MAINTAINERS(45B)
----doc.go(839B)
----proteus.svg(7KB)
----Makefile(695B)
----cli()
--------proteus()
----.travis.yml(348B)
----scanner()
--------scanner.go(10KB)
--------package_test.go(5KB)
--------scanner_test.go(13KB)
--------context_test.go(909B)
--------package.go(8KB)
--------tags.go(355B)
--------context.go(4KB)
----LICENSE(1KB)
----example_test.go(2KB)
----README.md(11KB)
----report()
--------report.go(1KB)
----example()
--------server.proteus.go(2KB)
--------client()
--------Makefile(558B)
--------server()
--------categories()
--------generated.pb.go(72KB)
--------README.md(634B)
--------protos()
--------models.go(3KB)
----rpc()
--------rpc.go(10KB)
--------rpc_test.go(11KB)
--------context_test.go(1KB)
--------context.go(2KB)
----protobuf()
--------transform_test.go(22KB)
--------type_set_test.go(2KB)
--------gen.go(4KB)
--------protobuf.go(8KB)
--------transform.go(12KB)
--------gen_test.go(4KB)
--------protobuf_test.go(4KB)
--------type_set.go(885B)
--------mapping.go(5KB)
--------mapping_test.go(2KB)
----ARCHITECTURE.md(6KB)
----fixtures()
--------foo.go(516B)
--------bar.go(365B)
--------subpkg()
----proteus.go(2KB)