]> granicus.if.org Git - python/commit
bpo-35081: Make some _PyGC macros internal (GH-10507)
authorVictor Stinner <vstinner@redhat.com>
Tue, 13 Nov 2018 11:52:18 +0000 (12:52 +0100)
committerGitHub <noreply@github.com>
Tue, 13 Nov 2018 11:52:18 +0000 (12:52 +0100)
commit1a6be91e6fd65ce9cb88cbbbb193db7e92ec6076
treeddc9692cb94ce5f3659cc4b3f24a3d6fb2632a4a
parent0d12672b30b8c6c992bef7564581117ae83e11ad
bpo-35081: Make some _PyGC macros internal (GH-10507)

* Move "GC" macros together:

  * PyObject_IS_GC()
  * _Py_AS_GC()
  * _PyObject_GC_IS_TRACKED()
  * _PyObject_GC_MAY_BE_TRACKED()

* Mark other GC macros as internal (#ifdef Py_BUILD_CORE):

  * _PyGCHead_NEXT(g), _PyGCHead_SET_NEXT(g, p)
  * _PyGCHead_PREV(g), _PyGCHead_SET_PREV(g, p)
  * _PyGCHead_FINALIZED(g), _PyGCHead_SET_FINALIZED(g)
  * _PyGC_FINALIZED(o), _PyGC_SET_FINALIZED(o)
  * _PyObject_GC_TRACK(o), _PyObject_GC_UNTRACK(o)
  * _PyGC_PREV_MASK_FINALIZED
  * _PyGC_PREV_MASK_COLLECTING
  * _PyGC_PREV_SHIFT
  * _PyGC_PREV_MASK

* Replace _PyGC_generation0 with _PyRuntime.gc.generation0
* _queuemodule.c: replace _PyObject_GC_UNTRACK()
  with with PyObject_GC_UnTrack()
* Document that  _PyObject_GC_TRACK() _PyObject_GC_UNTRACK() macros
  have been removed from the public C API.
Doc/c-api/gcsupport.rst
Include/internal/pycore_pymem.h
Include/objimpl.h
Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst [new file with mode: 0644]
Modules/_queuemodule.c