pub struct CompositionValidator;Expand description
Composes multiple subgraph schemas into a supergraph
Validates cross-subgraph consistency and produces a composed supergraph schema that combines all federated types and directives from input subgraphs.
Implementations§
Source§impl CompositionValidator
impl CompositionValidator
Sourcepub fn validate_composition(
&self,
subgraphs: Vec<(String, FederationMetadata)>,
) -> Result<ComposedSchema, Vec<CompositionError>>
pub fn validate_composition( &self, subgraphs: Vec<(String, FederationMetadata)>, ) -> Result<ComposedSchema, Vec<CompositionError>>
Validate and compose multiple subgraphs into a supergraph
Performs two-phase composition:
- Validate: Cross-subgraph consistency checking
- Compose: Merge types into supergraph schema
§Arguments
subgraphs: Named subgraph metadata to compose
§Errors
Returns vector of all composition errors if validation or composition fails.
§Example
ⓘ
let subgraphs = vec![
("users".to_string(), users_metadata),
("orders".to_string(), orders_metadata),
];
let validator = CompositionValidator::new();
let composed = validator.validate_composition(subgraphs)?;Trait Implementations§
Source§impl Debug for CompositionValidator
impl Debug for CompositionValidator
Auto Trait Implementations§
impl Freeze for CompositionValidator
impl RefUnwindSafe for CompositionValidator
impl Send for CompositionValidator
impl Sync for CompositionValidator
impl Unpin for CompositionValidator
impl UnsafeUnpin for CompositionValidator
impl UnwindSafe for CompositionValidator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more