context has_q with parameters T: a type with members q: a function with parameters instance of type T returning instance of type T f: a function with forall z: a type with assertions instance of context has_q with parameters instance of type z returning void with body Declaration of context has_r with parameters T: a type U: a type with members r: a function with parameters instance of type T function with parameters instance of type T instance of type U returning instance of type T returning instance of type T Declaration of x: a extern type Declaration of y: a extern type with assertions instance of context has_r with parameters instance of type x instance of type y