def _send(self, data, msg: Message): return Maybe.from_call(self.loop_process, data, msg, exc=TransitionFailed) | TransitionResult.empty(data)
def call(self, name, *a, **kw): return ( Maybe.from_call(self.vim.call, name, *a, exc=NvimError, **kw) .to_either(lambda: 'vim call failed: {}'.format( format_funcall(name, a, kw))) )