#[derive(Clone, Debug, said::sad::SAD, serde::Deserialize, serde::Serialize)]
pub struct Fancy {
thing: String,
#[said]
id_o: Option<said::SelfAddressingIdentifier>,
}
Produces the errors (abbreviated for clarity) in the invocation of the proc macro:
error: cannot find derive macro `Serialize` in this scope
failed to resolve: use of undeclared type `SerializationFormats`
cannot find trait `SAD` in this scope
This is worked-around by importing those symbols:
use said::sad::{SerializationFormats, SAD};
use serde::Serialize;
But a better solution would be for the SAD trait proc macro to fully qualify them internally so that it doesn't depend on the user to have those symbols imported.