19#define CPYCPPYY_INTERNAL 1 
   26#undef CPYCPPYY_INTERNAL 
   42#if PY_VERSION_HEX < 0x030b0000 
   45#if PY_VERSION_HEX >= 0x03030000 
   58#if PY_VERSION_HEX >= 0x03060000 
   73#define CPYCPPYY_GET_DICT_LOOKUP(mp)                                          \ 
   74    ((dict_lookup_func&)mp->ma_keys->dk_lookup) 
   78#define CPYCPPYY_GET_DICT_LOOKUP(mp)                                          \ 
   79    ((dict_lookup_func&)mp->ma_lookup) 
 
  103#if PY_VERSION_HEX < 0x03000000 
 
  150    0, 0, 0, 0, 0, 
Py_TPFLAGS_DEFAULT, 0, 0, 0, 0, 0, 0, 0,
 
  151    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
 
  152#if PY_VERSION_HEX >= 0x02030000 
  155#if PY_VERSION_HEX >= 0x02060000 
  158#if PY_VERSION_HEX >= 0x03040000 
  161#if PY_VERSION_HEX >= 0x03080000 
  164#if PY_VERSION_HEX >= 0x030c0000 
 
  190    0, 0, 0, 0, 0, 
Py_TPFLAGS_DEFAULT, 0, 0, 0, 0, 0, 0, 0,
 
  191    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
 
  192#if PY_VERSION_HEX >= 0x02030000 
  195#if PY_VERSION_HEX >= 0x02060000 
  198#if PY_VERSION_HEX >= 0x03040000 
  201#if PY_VERSION_HEX >= 0x03080000 
  204#if PY_VERSION_HEX >= 0x030c0000 
 
  253#if PY_VERSION_HEX < 0x030b0000 
  272#if PY_VERSION_HEX >= 0x03060000 
  278#define CPYCPPYY_ORGDICT_LOOKUP(mp, key, hash, value_addr, hashpos)           \ 
  279    OrgDictLookup(mp, key, hash, value_addr, hashpos) 
  284#elif PY_VERSION_HEX >= 0x03030000 
  291#define CPYCPPYY_ORGDICT_LOOKUP(mp, key, hash, value_addr, hashpos)           \ 
  292    OrgDictLookup(mp, key, hash, value_addr) 
  304#define CPYCPPYY_ORGDICT_LOOKUP(mp, key, hash, value_addr, hashpos)           \ 
  305    OrgDictLookup(mp, key, hash) 
 
  310    static GblGetter 
gbl;
 
  311#if PY_VERSION_HEX >= 0x03060000 
  322#if PY_VERSION_HEX >= 0x03060000 
  325    if (!
ep || (
ep->me_key && 
ep->me_value))
 
  357#if PY_VERSION_HEX >= 0x03060000 
  360            ep->me_key   = 
nullptr;
 
  361            ep->me_value = 
nullptr;
 
  371#if PY_VERSION_HEX >= 0x03030000 
  372    if (
mp->ma_keys->dk_usable <= 0) {
 
  388            if (0 < 
mp->ma_keys->dk_usable)
 
  411#if PY_VERSION_HEX < 0x030b0000 
  454static char* 
GCIA_kwlist[] = {(
char*)
"instance", (
char*)
"field", (
char*)
"byref", 
NULL};
 
  494            if (req == 
"Instance_AsVoidPtr")
 
  496            else if (req == 
"Instance_FromVoidPtr")
 
  576#if PY_VERSION_HEX < 0x02060000 
  596        if (!
ctmod) 
return nullptr;
 
  626            PyExc_TypeError, 
"object is not a proxy to an array of PODs of known size");
 
  633    view.buf            = 
pyobj->GetObject();
 
  641    view.suboffsets     = 
NULL;
 
  642    view.internal       = 
NULL;
 
  676            "bind_object expects a valid class or class name as an argument");
 
  709                "provided instance and provided target type are unrelated");
 
  762    void* 
addr = 
nullptr;
 
  774                if (!
addr || !buflen) {
 
  776                        "bind_object requires a CObject/Capsule, long integer, buffer, or instance as first argument");
 
  845            p1->second.erase(
p2);
 
  989      METH_O, (
char*)
"Represent an array of objects as raw memory."},
 
  993      METH_O, (
char*)
"Cast the C++ object to become movable."},
 
  999      METH_O, (
char*)
"Install a type pinning."},
 
 1000    {(
char*) 
"_add_type_reducer", (
PyCFunction)AddTypeReducer,
 
 1002    {(
char*) 
"SetMemoryPolicy", (
PyCFunction)SetMemoryPolicy,
 
 1003      METH_VARARGS, (
char*)
"Determines object ownership model."},
 
 1004    {(
char*) 
"SetGlobalSignalPolicy", (
PyCFunction)SetGlobalSignalPolicy,
 
 1005      METH_VARARGS, (
char*)
"Trap signals in safe mode to prevent interpreter abort."},
 
 1006    {(
char*) 
"SetOwnership", (
PyCFunction)SetOwnership,
 
 1007      METH_VARARGS, (
char*)
"Modify held C++ object ownership."},
 
 1008    {(
char*) 
"AddSmartPtrType", (
PyCFunction)AddSmartPtrType,
 
 1009      METH_VARARGS, (
char*) 
"Add a smart pointer to the list of known smart pointer types."},
 
 1011      METH_NOARGS, (
char*) 
"Begin capturing stderr to a in memory buffer."},
 
 1013      METH_NOARGS, (
char*) 
"End capturing stderr and returns the captured buffer."},
 
 1014    {
nullptr, 
nullptr, 0, 
nullptr}
 
 
 1018#if PY_VERSION_HEX >= 0x03000000 
 1023#define GETSTATE(m) ((struct module_state*)PyModule_GetState(m)) 
 1052#define CPYCPPYY_INIT_ERROR return nullptr 
 1055#define CPYCPPYY_INIT_ERROR return 
 1066#if PY_VERSION_HEX < 0x03090000 
 1070#if PY_VERSION_HEX < 0x030b0000 
 1077#if PY_VERSION_HEX >= 0x03030000 
 1086#if PY_VERSION_HEX >= 0x03000000 
 1129#if PY_VERSION_HEX < 0x03000000 
 1192#if PY_VERSION_HEX >= 0x03000000 
 
static PyObject * default_repr(PyObject *)
 
#define CPYCPPYY_ORGDICT_LOOKUP(mp, key, hash, value_addr, hashpos)
 
static PyObject * nullptr_repr(PyObject *)
 
static PyNumberMethods nullptr_as_number
 
#define CPYCPPYY_INIT_ERROR
 
static void default_dealloc(PyObject *)
 
static PyTypeObject PyDefault_t_Type
 
static void nullptr_dealloc(PyObject *)
 
static int nullptr_nonzero(PyObject *)
 
static PyMethodDef gCPyCppyyMethods[]
 
static PyTypeObject PyNullPtr_t_Type
 
#define CPYCPPYY_GET_DICT_LOOKUP(mp)
 
PyDictEntry *(* dict_lookup_func)(PyDictObject *, PyObject *, long)
 
#define PY_SSIZE_T_FORMAT
 
static void * CPyCppyy_PyCapsule_GetPointer(PyObject *capsule, const char *)
 
#define CPyCppyy_PyText_AsString
 
static PyObject * CPyCppyy_PyCapsule_New(void *cobj, const char *, void(*destr)(void *))
 
static PyObject * PyObject_CallMethodOneArg(PyObject *obj, PyObject *name, PyObject *arg)
 
#define CPyCppyy_PyText_FromFormat
 
#define CPyCppyy_PyText_Type
 
#define CPyCppyy_PyText_FromString
 
#define CPyCppyy_PyText_Check
 
#define PyVarObject_HEAD_INIT(type, size)
 
static struct PyModuleDef moduledef
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h offset
 
TTime operator*(const TTime &t1, const TTime &t2)
 
const_iterator begin() const
 
const_iterator end() const
 
Py_ssize_t GetBuffer(PyObject *pyobject, char tc, int size, void *&buf, bool check=true)
 
std::string ConstructTemplateArgs(PyObject *pyname, PyObject *tpArgs, PyObject *args=nullptr, ArgPreference=kNone, int argoff=0, int *pcnt=nullptr)
 
bool InitProxy(PyObject *module, PyTypeObject *pytype, const char *name)
 
PyTypeObject CPPInstance_Type
 
PyObject * gAbrtException
 
PyObject * gDefaultObject
 
PyTypeObject VectorIter_Type
 
PyTypeObject CPPExcInstance_Type
 
PyObject * GetScopeProxy(Cppyy::TCppScope_t)
 
std::ostringstream gCapturedError
 
dict_lookup_func gDictLookupOrg
 
PyTypeObject CustomInstanceMethod_Type
 
PyObject * CreateScopeProxy(Cppyy::TCppScope_t, const unsigned flags=0)
 
bool CPPDataMember_CheckExact(T *object)
 
PyTypeObject RefFloat_Type
Custom "builtins," detectable by type, for pass by ref and improved performance.
 
PyObject * gSegvException
 
std::set< Cppyy::TCppType_t > gPinnedTypes
 
PyObject * DestroyPyStrings()
 
PyObject * BindCppObjectNoCast(Cppyy::TCppObject_t object, Cppyy::TCppType_t klass, const unsigned flags=0)
 
std::map< std::string, std::vector< PyObject * > > gPythonizations
 
bool CPPScope_Check(T *object)
 
CPYCPPYY_EXTERN PyObject * Instance_FromVoidPtr(void *addr, const std::string &classname, bool python_owns=false)
 
bool CPPInstance_Check(T *object)
 
PyTypeObject IndexIter_Type
 
PyObject * gNullPtrObject
 
PyTypeObject CPPOverload_Type
 
PyTypeObject TemplateProxy_Type
 
PyTypeObject InstanceArrayIter_Type
 
bool CPPDataMember_Check(T *object)
 
PyObject * BindCppObject(Cppyy::TCppObject_t object, Cppyy::TCppType_t klass, const unsigned flags=0)
 
CPYCPPYY_EXTERN void * Instance_AsVoidPtr(PyObject *pyobject)
 
PyTypeObject CPPScope_Type
 
PyTypeObject LowLevelView_Type
 
bool CPPOverload_CheckExact(T *object)
 
PyTypeObject CPPDataMember_Type
 
std::streambuf * gOldErrorBuffer
 
PyTypeObject TupleOfInstances_Type
Representation of C-style array of instances.
 
RPY_EXPORTED ptrdiff_t GetBaseOffset(TCppType_t derived, TCppType_t base, TCppObject_t address, int direction, bool rerror=false)
 
RPY_EXPORTED size_t SizeOf(TCppType_t klass)
 
RPY_EXPORTED void AddSmartPtrType(const std::string &)
 
RPY_EXPORTED bool IsSubtype(TCppType_t derived, TCppType_t base)
 
RPY_EXPORTED void AddTypeReducer(const std::string &reducable, const std::string &reduced)
 
RPY_EXPORTED bool IsAggregate(TCppType_t type)
 
RPY_EXPORTED TCppScope_t GetScope(const std::string &scope_name)
 
static ECallFlags sMemoryPolicy
 
static bool SetGlobalSignalPolicy(bool setProtected)
 
static bool SetMemoryPolicy(ECallFlags e)
 
PyObject_HEAD char * b_ptr