bluejay_core/definition/
interface_implementation.rs

1use crate::definition::{InterfaceTypeDefinition, SchemaDefinition};
2
3pub trait InterfaceImplementation {
4    type InterfaceTypeDefinition: InterfaceTypeDefinition;
5
6    fn interface<'a, S: SchemaDefinition<InterfaceTypeDefinition = Self::InterfaceTypeDefinition>>(
7        &'a self,
8        schema_definition: &'a S,
9    ) -> &'a Self::InterfaceTypeDefinition;
10
11    fn name(&self) -> &str;
12}