2020-09-13 03:41:15 +00:00
use crate ::{ registry , GQLObject } ;
2020-03-02 11:25:21 +00:00
2020-03-03 11:15:18 +00:00
pub struct __EnumValue < ' a > {
pub registry : & ' a registry ::Registry ,
2020-05-15 02:08:37 +00:00
pub value : & ' a registry ::MetaEnumValue ,
2020-03-03 11:15:18 +00:00
}
2020-03-02 11:25:21 +00:00
2020-05-10 04:41:05 +00:00
/// One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.
2020-09-13 03:41:15 +00:00
#[ GQLObject(internal) ]
2020-03-05 06:23:55 +00:00
impl < ' a > __EnumValue < ' a > {
2020-05-01 23:57:34 +00:00
async fn name ( & self ) -> String {
2020-03-05 06:23:55 +00:00
self . value . name . to_string ( )
2020-03-02 11:25:21 +00:00
}
2020-05-01 23:57:34 +00:00
async fn description ( & self ) -> Option < String > {
2020-03-05 06:23:55 +00:00
self . value . description . map ( | s | s . to_string ( ) )
2020-03-02 11:25:21 +00:00
}
2020-05-01 23:57:34 +00:00
async fn is_deprecated ( & self ) -> bool {
2020-03-05 06:23:55 +00:00
self . value . deprecation . is_some ( )
2020-03-02 11:25:21 +00:00
}
2020-05-01 23:57:34 +00:00
async fn deprecation_reason ( & self ) -> Option < String > {
2020-03-05 06:23:55 +00:00
self . value . deprecation . map ( | s | s . to_string ( ) )
2020-03-02 11:25:21 +00:00
}
}