pub fn derive_external_trait(
    session: &Lrc<Session>,
    span: Span,
    trait_name: String
)