desc: Describes a response to an API call
        args:
            -   name: description
                type: str
                desc: A description of the condition that causes this response
                required: false
                default: ""
            -   name: codes
                type: int
                desc: >
                    One or more HTTP status codes associated with
                    this response
                required: false
                default: [200]
            -   name: response_example
                type: dict
                desc: An example JSON response body
                required: false
                default: null
            -   name: response_help
                type: DocString
                desc: Help for @response_example
                required: false
                default: null

def factory(
        description="",
        codes=[200],
        response_example=None,
        response_ctor=None,
    ):
        """
        desc: Describes a response to an API call
        args:
            -   name: description
                type: str
                desc: A description of the condition that causes this response
                required: false
                default: ""
            -   name: codes
                type: int
                desc: >
                    One or more HTTP status codes associated with
                    this response
                required: false
                default: [200]
            -   name: response_example
                type: dict
                desc: An example JSON response body
                required: false
                default: null
            -   name: response_help
                type: DocString
                desc: Help for @response_example
                required: false
                default: null
        """
        return RouteMethodResponse(
            description,
            codes,
            response_example,
            DocString.from_ctor(response_ctor) if response_ctor else None,
        )