protoc
gRPC Swift plugingRPC Swift provides a plugin for the protocol buffer
compiler protoc
to generate classes for clients and services.
The protoc-gen-grpc-swift
plugin can be built by using the Makefile in the
top-level directory:
$ make plugins
The Swift Package Manager may also be invoked directly to build the plugin:
$ swift build --product protoc-gen-grpc-swift
The plugin must be in your PATH
environment variable or specified directly
when invoking protoc
.
The Visibility option determines the access control for generated code.
The Server option determines whether server code is generated. The
generated server code includes a protocol
which users must implement
to provide the logic for their service.
The Client option determines whether client code is generated. The
generated client code includes a protocol
and a class
conforming to that
protocol.
The TestClient option determines whether test client code is generated.
This does not include the protocol
generated by the Client option.
The FileNaming option determines how generated source files should be named.
foo/bar/baz.proto
will generate foo/bar/baz.grpc.proto
foo/bar/baz.proto
will generate foo_bar_baz.grpc.proto
foo/bar/baz.proto
will generate baz.grpc.proto
The ProtoPathModuleMappings option allows module mappings to be specified. See the SwiftProtobuf documentation.
The KeepMethodCasing determines whether the casing of generated function names is kept.
For example, for the following RPC definition:
rpc Foo(FooRequest) returns (FooRequest) {}
Will generate stubs named foo
by default. However, in some cases this is not
desired, and setting KeepMethodCasing=true
will yield stubs named Foo
.
The GRPCModuleName option allows the name of the gRPC Swift runtime module to be specified. The value, if not specified, defaults to "GRPC".
Note: most users will not need to use this option.
The SwiftProtobufModuleName option allows the name of the SwiftProtobuf runtime module to be specified. The value, if not specified, defaults to "SwiftProtobuf".
*Note: most users will not need to use this option. Introduced to match the option that exists in SwiftProtobuf.
To pass extra parameters to the plugin, use a comma-separated parameter list
separated from the output directory by a colon. Alternatively use the
--grpc-swift_opt
flag.
For example, to generate only client stubs:
protoc <your proto> --grpc-swift_out=Client=true,Server=false:.
Or, in the alternate syntax:
protoc <your proto> --grpc-swift_opt=Client=true,Server=false --grpc-swift_out=.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。