def record_schemas(<EOL>fn, wrapper, location, request_schema=None, response_schema=None):
<EOL>has_acceptable = hasattr(fn, '<STR_LIT>')<EOL>if request_schema is not None:<EOL><INDENT>wrapper._request_schema = wrapper._request_schema = request_schema<EOL>wrapper._request_schema_location = location<EOL>if has_acceptable:<EOL><INDENT>fn._acceptable_metadata._request_schema = request_schema<EOL>fn._acceptable_metadata._request_schema_location = location<EOL><DEDENT><DEDENT>if response_schema is not None:<EOL><INDENT>wrapper._response_schema = wrapper._response_schema = response_schema<EOL>wrapper._response_schema_location = location<EOL>if has_acceptable:<EOL><INDENT>fn._acceptable_metadata._response_schema = response_schema<EOL>fn._acceptable_metadata._response_schema_location = location<EOL><DEDENT><DEDENT>
Support extracting the schema from the decorated function.