如何在 Rust 中使用 flatbuffers `key` 属性来模拟带有 flatbuffers 的 HashMap?

问题描述

我需要在 Rust 中使用 flatbuffers 创建一个 stringstring 的映射,类似于:

pub struct HashMapIndex {
    keyword_by_filter: HashMap<String,String> // filter text -> keyword
}

我发现了一些可以放在数组项上的 key flatbuffers attribute,但它似乎既没有记录也没有显示在示例中:

可用于就地二分查找

table KeywordToFilters {
  filter_text: string (key);
  keyword: string;
}

table Index {
  map: [KeywordToFilters];
}

我如何使用它(按键获取价值)?问题是没有生成类似地图的方法 - 它只是一个向量:

pub map: Option<flatbuffers::WIPOffset<flatbuffers::Vector<'a,flatbuffers::ForwardsUOffset<KeywordToFilters<'a >>>>>,

在 Rust 中是否有更有效的方法来使用平面缓冲区?

附注。 flatbuffers crate 版本是 0.8.3

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)