PyGreenlet.hpp 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef PYGREENLET_HPP
  2. #define PYGREENLET_HPP
  3. #include "greenlet.h"
  4. #include "greenlet_compiler_compat.hpp"
  5. #include "greenlet_refs.hpp"
  6. using greenlet::refs::OwnedGreenlet;
  7. using greenlet::refs::BorrowedGreenlet;
  8. using greenlet::refs::BorrowedObject;;
  9. using greenlet::refs::OwnedObject;
  10. using greenlet::refs::PyErrPieces;
  11. // XXX: These doesn't really belong here, it's not a Python slot.
  12. static OwnedObject internal_green_throw(BorrowedGreenlet self, PyErrPieces& err_pieces);
  13. static PyGreenlet* green_new(PyTypeObject* type, PyObject* UNUSED(args), PyObject* UNUSED(kwds));
  14. static int green_clear(PyGreenlet* self);
  15. static int green_init(PyGreenlet* self, PyObject* args, PyObject* kwargs);
  16. static int green_setparent(PyGreenlet* self, PyObject* nparent, void* UNUSED(context));
  17. static int green_setrun(PyGreenlet* self, PyObject* nrun, void* UNUSED(context));
  18. static int green_traverse(PyGreenlet* self, visitproc visit, void* arg);
  19. static void green_dealloc(PyGreenlet* self);
  20. static PyObject* green_getparent(PyGreenlet* self, void* UNUSED(context));
  21. static int green_is_gc(PyObject* self);
  22. static PyObject* green_getdead(PyGreenlet* self, void* UNUSED(context));
  23. static PyObject* green_getrun(PyGreenlet* self, void* UNUSED(context));
  24. static int green_setcontext(PyGreenlet* self, PyObject* nctx, void* UNUSED(context));
  25. static PyObject* green_getframe(PyGreenlet* self, void* UNUSED(context));
  26. static PyObject* green_repr(PyGreenlet* self);
  27. #endif