Well, You'll be happy to know that a decorator is literally just a function that takes another function as its first argument.
@app.route(...)
def login():
...
Is literally the same thing as - def login():
...
login = app.route(login, ...)
Hopefully that clears up the air a bit?