使用rust-protobuf时我作为参数传递什么?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用rust-protobuf时我作为参数传递什么?相关的知识,希望对你有一定的参考价值。
我试图跟随qazxsw poi生成Rust protobuf文件:
API to generate .rs files
用于生成要使用的instructions文件的API。 G。
.rs
。示例代码:
from build.rs在
extern crate protoc_rust; protoc_rust::run(protoc_rust::Args { out_dir: "src/protos", input: &["protos/a.proto", "b.proto"], includes: &["protos"], }).expect("protoc");
:Cargo.toml
请注意,此API需要
[build-dependencies] protoc-rust = "1.4"
中的protoc
命令。虽然不需要$PATH
命令。
没有明确的文档说明这些参数的传递内容。第一个(protoc-gen-rust
)显然是生成文件的目录.out_dir
看起来像用于生成的input
文件列表。在这个例子中,第一个有一个目录,而第二个没有。我是否需要为每个目录或第一个目录传递一个目录? .proto
真的让我感到困惑。这是要查看的文件夹列表吗?如果我在这里添加includes
,我可以省略protos
的元素吗?
如果你看一下源代码(input
),你会看到:
source
所以这些论点的含义是:
#[derive(Debug, Default)]
pub struct Args<'a> {
/// --lang_out= param
pub out_dir: &'a str,
/// -I args
pub includes: &'a [&'a str],
/// List of .proto files to compile
pub input: &'a [&'a str],
}
:生成文件的位置
out_dir
(includes
):protoc将搜索进口的地方(-I
)
documentation:要编译的input
文件列表
以上是关于使用rust-protobuf时我作为参数传递什么?的主要内容,如果未能解决你的问题,请参考以下文章