我正在尝试为Rust写的一个项目编写文档.其中一个文档需要使用regex::Regex
.这是我要写的文档:
/// Return a list of the offsets of the tokens in `s`, as a sequence of `(start, end)` /// tuples, by splitting the string at each successive match of `regex`. /// /// # Examples /// /// ``` /// use rusty_nltk::tokenize::util::regexp_span_tokenize; /// use regex::Regex; /// /// let s = "Good muffins cost $3.88\nin New York. Please buy me /// two of them.\n\nThanks."; /// let regex = regex::Regex::new(r"\s").unwrap(); /// let spans = regexp_span_tokenize(s, regex).unwrap(); /// ```
它给了我这个错误:
---- tokenize::util::regexp_span_tokenize_0 stdout ----
:4:9: 4:14 error: unresolved import `regex::Regex`. Maybe a missing `extern crate regex`? [E0432]
:4 use regex::Regex;
^~~~~
error: aborting due to previous error
但是当我添加时extern crate regex;
,我收到此错误:
---- tokenize::util::regexp_span_tokenize_0 stdout ----
:3:9: 3:19 error: unresolved import `rusty_nltk::tokenize::util::regexp_span_tokenize`. Maybe a missing `extern crate rusty_nltk`? [E0432]
:3 use rusty_nltk::tokenize::util::regexp_span_tokenize;
^~~~~~~~~~
:4:9: 4:14 error: unresolved import `regex::Regex`. Did you mean `self::regex`? [E0432]
:4 use regex::Regex;
^~~~~
error: aborting due to 2 previous errors
相关文件的一些相关部分是:
SRC/lib.rs:extern crate regex; pub mod tokenize;SRC /记号化/ mod.rs:
extern crate regex; pub mod util;(顶部)src/tokenize/util.rs:
extern crate regex; use regex::Regex;
我的项目布局有什么问题?
来自Rust编程语言的文档章节:
这是rustdoc用于预处理示例的完整算法:
任何前导
#![foo]
属性都保留为crate属性.一些常见的允许属性被插入,包括
unused_variables
,unused_assignments
,unused_mut
,unused_attributes
,和dead_code
.小例子经常触发这些lint.如果示例不包含
extern crate
,则extern crate
插入.; 最后,如果示例不包含
fn main
,则包含文本的其余部分fn main() { your_code }
第3点与此相关.如果没有 extern crate
行,则会自动添加您的包.添加第一个后extern crate
,将不会自动添加包装箱 - 包括您的包装箱!
您将需要添加extern crate
线都regex
和rusty_nltk
.