小编jl0*_*x61的帖子

如何在 Rust 中使用 Prost 生成代码?

我不知道如何使用生成代码prost_build

\n\n

我已经阅读了文档,但他们没有给出生成代码的详细命令。\n我输入cargo build但没有生成代码。

\n\n

我的build.rs

\n\n
extern crate prost_build;\nfn main() {\n    prost_build::compile_protos(&["src/items.proto"],\n                                &["src/"]).unwrap();\n}\n\n
Run Code Online (Sandbox Code Playgroud)\n\n

我的Cargo.toml

\n\n
[package]\nname = "snazzy"\nversion = "0.1.0"\nauthors = ["xxx <xxx@xxx.com>"]\nedition = "2018"\nbuild = "build.rs"\n\n# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html\n\n[dependencies]\nbytes = "0.4"\nprost = "0.5"\n\n[build-dependencies]\nprost-build = { version = "0.4"  }\n
Run Code Online (Sandbox Code Playgroud)\n\n

我的items.proto

\n\n
syntax = "proto3";\n\npackage snazzy.items;\n\nmessage Shirt {\n    enum Size {\n        SMALL = 0;\n        MEDIUM = 1;\n        LARGE = 2;\n    }\n    string color = 1;\n    Size …
Run Code Online (Sandbox Code Playgroud)

protocol-buffers rust

12
推荐指数
1
解决办法
4136
查看次数

如何在Rust中的日志输出中添加特定的前缀?

我有一个对象,希望每个日志记录输出都以该对象的某些状态为前缀。但是为每个日志记录语句添加前缀非常不便。有没有简单的实现方法?

下面是示例代码。

use log::info;

struct Obj {
    id: i32,
    name: String,
}

impl Obj {
    // can I use `info!("receive {} from {}", item, from);` for simplicity?
    fn call_me(&self, item: i32, from: String) {
        info!("[id: {}][name: {}] receive {} from {}", self.id, self.name, item, from);
    }
    // ...many methods
}
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!

logging rust

4
推荐指数
1
解决办法
86
查看次数

`%fs:0xfffffffffffffff8`的真实地址是什么?

我想使用ebpf.

在阅读了一些帖子和博客后,我知道%fs:0xfffffffffffffff8指向ggo的结构和mov %fs:0xfffffffffffffff8,%rcx指令总是出现在 go 函数的开头。

main.main作为一个例子:

func main() {
 177341   458330:   64 48 8b 0c 25 f8 ff    mov    %fs:0xfffffffffffffff8,%rcx
 177342   458337:   ff ff
 177343   458339:   48 3b 61 10             cmp    0x10(%rcx),%rsp
 177344   45833d:   76 1a                   jbe    458359 <main.main+0x29>
 177345   45833f:   48 83 ec 08             sub    $0x8,%rsp
 177346   458343:   48 89 2c 24             mov    %rbp,(%rsp)
 177347   458347:   48 8d 2c 24             lea    (%rsp),%rbp
 177348     myFunc()
 177349   45834b:   e8 10 00 …
Run Code Online (Sandbox Code Playgroud)

assembly x86-64 go bpf ebpf

4
推荐指数
1
解决办法
359
查看次数

标签 统计

rust ×2

assembly ×1

bpf ×1

ebpf ×1

go ×1

logging ×1

protocol-buffers ×1

x86-64 ×1