The generated enum type looks like this, although I don't really have access to the src as it's generated by Prost! during the build:
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Fruit {
    Unspecified = 0,
    Apple = 1,
    Banana = 2,
    Lemon = 3,
    ...
I can get a &str from an enum like this:
let apple = Fruit::Apple;
assert_eq!(apple.as_str_name(), "APPLE");
This method is provided by Prost!.
But I want to get the enum from a string.
The strum crate offers a solution except I can't edit the source code file. Maybe there's a hack using include!() to attach a macro annotation during the build stage.
 
                        
prost_buildcan be configured to attach arbitrary attributes to the generated code viatype_attributeandfield_attribute: