# Copyright 2014 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # distutils: language = c++ from libc.stdint cimport intptr_t, uint32_t, uint64_t cdef extern from "mojo/public/c/system/core.h" nogil: ctypedef uint32_t MojoHandle ctypedef uint64_t MojoDeadline ctypedef uint32_t MojoHandleSignals cdef extern from "mojo/public/c/environment/async_waiter.h" nogil: ctypedef intptr_t MojoAsyncWaitID cdef extern from "mojo/public/python/src/common.h" \ namespace "mojo::python" nogil: cdef cppclass PythonAsyncWaiter "mojo::python::PythonAsyncWaiter": PythonAsyncWaiter() MojoAsyncWaitID AsyncWait(MojoHandle, MojoHandleSignals, MojoDeadline, object) void CancelWait(MojoAsyncWaitID)