INNER CODE UNIT · Rust
build
apollographql/apollo-rs · crates/apollo-smith/src/lib.rs:231
pub fn build(mut self) -> Result<Document> {
for _ in 0..self.u.int_in_range(1..=self.max_scalar_types)? {
let scalar_type_def = self.scalar_type_definition()?;
self.scalar_type_defs.push(scalar_type_def);
}
for _ in 0..self.u.int_in_range(1..=self.max_enum_types)? {
let enum_type_def = self.enum_type_definition()?;
self.enum_type_defs.push(enum_type_def);
}
for _ in 0..self.u.int_in_range(1..=self.max_interface_types)? {
let def = self.interface_type_definition()?;
self.implements_graph.node_for(&def.name);
for parent in &def.interfaces {
self.implements_graph.add_edge(&def.name, parent);
}
self.interface_type_defs.push(def);