pub struct Message {
/// One of the Type values described above.
#[prost(enumeration="message::Type", required, tag="1")]
pub r#type: i32,
...
...
}
pub mod message {
pub enum Type {
...
CLIENT_RESPONSE=6,
...
}
}
That's because you wrote dnstap::Message, which refers to a type, so dnstap::Message::Type is supposed to be an associated type. Since it is not found for Message it might be defined in the implementation of some trait, so the compiler suggest you to be explicit about what trait you mean. But actually all of this seems meaningless in your case since you probably meant message with a lowercase m, which is the module which contains Type.