我正在玩一個用於2D噪聲生成的小箱子。這是我的「lib.rs」文件的一個簡單的代碼片段:在文檔測試中使用本地模塊時出錯
pub mod my_math {
pub struct Vec2<T> {
...
}
...
}
pub mod my_noise {
use num::Float;
use std::num::Wrapping;
use my_math::*;
/// Gets pseudo-random noise based on a seed vector.
///
/// # Examples
///
/// ```
/// use my_math::Vec2;
///
/// let v_seed = Vec2::<f32>::new_values(4.134, -23.141);
/// let noise_val = get_noise_white(&v_seed);
///
/// assert!(noise_val >= 0.0);
/// assert!(noise_val <= 1.0);
/// ```
pub fn get_noise_white(seed: &Vec2<f32>) -> f32 {
...
}
}
然而,當我運行貨物檢驗,我得到以下錯誤:
---- my_noise::get_noise_white_0 stdout ----
<anon>:3:9: 3:16 error: unresolved import
my_math::Vec2
. Maybe a missingextern crate my_math
?<anon>:3 use my_math::Vec2;
我也嘗試過其他形式的文檔評論中的use
聲明,其中包括use my_math::*;
和use self::my_math::*;
。如果我完全刪除該行,那麼我得到的錯誤是Vec2
未定義。
這樣做的正確方法是什麼?
謝謝,修好了! – heyx3