def route(self, rule, **options):
    "A decorator that is used to register a view function for a\n        given URL rule.  This does the same thing as :meth:`add_url_rule`\n        but is intended for decorator usage::\n            @app.route('/')\n            def index():\n                return 'Hello World'\n        For more information refer to :ref:`url-route-registrations`.\n        :param rule: the URL rule as string\n        :param endpoint: the endpoint for the registered URL rule.  Flask\n                         itself assumes the name of the view function as\n                         endpoint\n        :param options: the options to be forwarded to the underlying\n                        :class:`~werkzeug.routing.Rule` object.  A change\n                        to Werkzeug is handling of method options.  methods\n                        is a list of methods this rule should be limited\n                        to (``GET``, ``POST`` etc.).  By default a rule\n                        just listens for ``GET`` (and implicitly ``HEAD``).\n                        Starting with Flask 0.6, ``OPTIONS`` is implicitly\n                        added and handled by the standard request handling.\n        "

    def decorator(f):
        endpoint = options.pop('endpoint', None)
        self.add_update_rule(rule, endpoint, f, **options)
        return f
    return decorator
A decorator that is used to register a view function for a
given URL rule.  This does the same thing as :meth:`add_url_rule`
but is intended for decorator usage::
    @app.route('/')
    def index():
        return 'Hello World'
For more information refer to :ref:`url-route-registrations`.
:param rule: the URL rule as string
:param endpoint: the endpoint for the registered URL rule.  Flask
                 itself assumes the name of the view function as
                 endpoint
:param options: the options to be forwarded to the underlying
                :class:`~werkzeug.routing.Rule` object.  A change
                to Werkzeug is handling of method options.  methods
                is a list of methods this rule should be limited
                to (``GET``, ``POST`` etc.).  By default a rule
                just listens for ``GET`` (and implicitly ``HEAD``).
                Starting with Flask 0.6, ``OPTIONS`` is implicitly
                added and handled by the standard request handling.
def route(self, rule, **options):
    "A decorator that is used to register a view function for a\n        given URL rule.  This does the same thing as :meth:`add_url_rule`\n        but is intended for decorator usage::\n            @app.route('/')\n            def index():\n                return 'Hello World'\n        For more information refer to :ref:`url-route-registrations`.\n        :param rule: the URL rule as string\n        :param endpoint: the endpoint for the registered URL rule.  Flask\n                         itself assumes the name of the view function as\n                         endpoint\n        :param options: the options to be forwarded to the underlying\n                        :class:`~werkzeug.routing.Rule` object.  A change\n                        to Werkzeug is handling of method options.  methods\n                        is a list of methods this rule should be limited\n                        to (``GET``, ``POST`` etc.).  By default a rule\n                        just listens for ``GET`` (and implicitly ``HEAD``).\n                        Starting with Flask 0.6, ``OPTIONS`` is implicitly\n                        added and handled by the standard request handling.\n        "

    def decorator(f):
        endpoint = options.pop('endpoint', None)
        self.add_update_rule(rule, endpoint, f, **options)
        return f
    return decorator