def iscoroutinefunction(func):
return getattr(func, "<STR_LIT>", False) or (<EOL>hasattr(inspect, "<STR_LIT>") and inspect.iscoroutinefunction(func)<EOL>)<EOL>
Return True if func is a decorated coroutine function.

    Note: copied and modified from Python 3.5's builtin couroutines.py to avoid import asyncio directly,
    which in turns also initializes the "logging" module as side-effect (see issue #8).