Add `SchemaBuilder::override_name` method. #437
This commit is contained in:
parent
f6c0c33885
commit
272fea205d
|
@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
- Remove unnecessary Box from WebSocket messages.
|
||||
- Export subscription type to Federation SDL. (for [GraphGate](https://github.com/async-graphql/graphgate) 😁)
|
||||
- Add `extends` attribute for derive macros Subscription and MergedSubscription.
|
||||
- Add `SchemaBuilder::override_name` method. [#437](https://github.com/async-graphql/async-graphql/issues/437)
|
||||
|
||||
## [2.5.11] - 2021-03-07
|
||||
|
||||
|
|
|
@ -623,4 +623,16 @@ impl Registry {
|
|||
None => {}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn set_name<T: Type>(&mut self, new_name: String) {
|
||||
match self.types.get_mut(&*T::type_name()) {
|
||||
Some(MetaType::Scalar { name, .. }) => *name = new_name,
|
||||
Some(MetaType::Object { name, .. }) => *name = new_name,
|
||||
Some(MetaType::Interface { name, .. }) => *name = new_name,
|
||||
Some(MetaType::Union { name, .. }) => *name = new_name,
|
||||
Some(MetaType::Enum { name, .. }) => *name = new_name,
|
||||
Some(MetaType::InputObject { name, .. }) => *name = new_name,
|
||||
None => {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -105,12 +105,18 @@ impl<Query, Mutation, Subscription> SchemaBuilder<Query, Mutation, Subscription>
|
|||
self
|
||||
}
|
||||
|
||||
/// Override the description of the specified type.
|
||||
/// Override the name of the specified type.
|
||||
pub fn override_description<T: Type>(mut self, desc: &'static str) -> Self {
|
||||
self.registry.set_description::<T>(desc);
|
||||
self
|
||||
}
|
||||
|
||||
/// Override the name of the specified type.
|
||||
pub fn override_name<T: Type>(mut self, new_name: impl Into<String>) -> Self {
|
||||
self.registry.set_name::<T>(new_name.into());
|
||||
self
|
||||
}
|
||||
|
||||
/// Build schema.
|
||||
pub fn finish(mut self) -> Schema<Query, Mutation, Subscription> {
|
||||
// federation
|
||||
|
|
Loading…
Reference in New Issue