Trong src/lib.rs
Tôi đã sauLàm cách nào để nhập từ mô-đun anh chị em?
extern crate opal_core;
mod functions;
mod context;
mod shader;
Sau đó, trong src/context.rs
Tôi có một cái gì đó như thế này, mà cố gắng để nhập ký tự từ src/shader.rs
:
use opal_core::shader::Stage;
use opal_core::shader::Shader as ShaderTrait;
use opal_core::GraphicsContext as GraphicsContextTrait;
use functions::*; // this import works fine
use shader::*; // this one doesn't
pub struct GraphicsContext {
functions: Gl
}
fn shader_stage_to_int(stage: &Stage) -> u32 {
match stage {
&Stage::Vertex => VERTEX_SHADER,
&Stage::Geometry => GEOMETRY_SHADER,
&Stage::Fragment => FRAGMENT_SHADER,
}
}
impl GraphicsContextTrait for GraphicsContext {
/// Creates a shader object
fn create_shader(&self, stage: Stage, source: &str) -> Box<ShaderTrait> {
let id;
unsafe {
id = self.functions.CreateShader(shader_stage_to_int(&stage));
}
let shader = Shader {
id: id,
stage: stage,
context: self
};
Box::new(shader)
}
}
Vấn đề là rằng tuyên bố use shader::*;
cung cấp cho các lỗi nhập chưa được giải quyết.
Tôi đã đọc tài liệu và họ nói rằng use
báo cáo luôn luôn đi từ gốc của thùng hiện tại (opal_driver_gl
) vì vậy tôi nghĩ shader::*
nên nhập opal_driver_gl::shader::*
nhưng dường như không làm như vậy. Tôi có cần sử dụng các từ khóa self
hoặc super
ở đây không?
Cảm ơn nếu bạn có thể trợ giúp.
Bạn đã xem bất kỳ câu hỏi nào khác có liên quan đến cùng một lỗi] (http://stackoverflow.com/search?q=%) 5Brust% 5D + Chưa được giải quyết + Nhập khẩu)? Nếu vậy, câu hỏi của bạn khác với chúng như thế nào? Bạn đã cố gắng thực hiện [testcase nhỏ hơn] (/ help/mcve) chưa? – Shepmaster
Tôi đã xem hầu hết các câu hỏi 'nhập chưa được giải quyết'. Họ chủ yếu tập trung vào việc lấy các biểu tượng từ bên ngoài một cái thùng nhưng tôi muốn làm ngược lại. Tôi sẽ cố gắng thu hẹp vấn đề. – neon64
Nó được coi là thực hành tốt để cho chúng tôi biết những gì bạn đã thử và những câu hỏi mà bạn đã nhìn thấy. Cũng bao gồm lý do tại sao những nỗ lực và câu hỏi đó không hoạt động hoặc những gì bạn không hiểu từ chúng. Điều này ngăn chúng tôi đoán được vấn đề thực sự của bạn là gì, giúp bạn nhận được câu trả lời dễ dàng hơn và thường cải thiện mức độ hữu ích của câu hỏi của bạn đối với người tìm kiếm trong tương lai. – Shepmaster