mod util; extern crate apistos_schemars as schemars; use std::marker::PhantomData; use schemars::JsonSchema; use util::*; struct MyIterator; impl Iterator for MyIterator { type Item = String; fn next(&mut self) -> Option { unimplemented!() } } // The default trait bounds would require T to implement JsonSchema, // which MyIterator does not. #[derive(JsonSchema)] #[schemars(bound = "T::Item: JsonSchema", rename = "MyContainer")] pub struct MyContainer where T: Iterator, { pub associated: T::Item, pub generic: PhantomData, } #[test] fn manual_bound_set() -> TestResult { test_default_generated_schema::>("bound") }