def ctx_provider(self, func):
        """ Decorator for adding a context provider.

        ::
            @jade.ctx_provider
            def my_context():
                return {...}
        """
        func = to_coroutine(func)
        self.providers.append(func)
        return func