# Associated type bound fn f>() {} ==> SourceFile( FunctionItem( fn, BoundIdentifier, TypeParamList( ConstrainedTypeParameter( TypeIdentifier, TraitBounds( GenericType( TypeIdentifier, TypeArgList( TypeBinding(TypeIdentifier, TraitBounds(TypeIdentifier))))))), ParamList, Block)) # Generic associated type bound fn f: Copy>>() {} ==> SourceFile( FunctionItem( fn, BoundIdentifier, TypeParamList( ConstrainedTypeParameter( TypeIdentifier, TraitBounds( GenericType( TypeIdentifier, TypeArgList( TypeBinding( GenericType(TypeIdentifier, TypeArgList(TypeIdentifier)), TraitBounds(TypeIdentifier))))))), ParamList, Block))