Module: PyCall::LibPython
- Defined in:
- lib/pycall/init.rb,
lib/pycall/libpython.rb,
lib/pycall/libpython/finder.rb,
lib/pycall/libpython/pyobject_struct.rb,
lib/pycall/libpython/pytypeobject_struct.rb,
ext/pycall/pycall.c
Defined Under Namespace
Modules: API, Finder, Helpers Classes: PyGetSetDef, PyMemberDef, PyMethodDef, PyObjectStruct, PyTypeObjectStruct
Constant Summary collapse
- T_SHORT =
types:
0
- T_INT =
1
- T_LONG =
2
- T_FLOAT =
3
- T_DOUBLE =
4
- T_STRING =
5
- T_OBJECT =
6
- T_CHAR =
7
- T_BYTE =
8
- T_UBYTE =
9
- T_USHORT =
10
- T_UINT =
11
- T_ULONG =
12
- T_STRING_INPLACE =
13
- T_BOOL =
14
- T_OBJECT_EX =
16
- T_LONGLONG =
added in Python 2.5
17
- T_ULONGLONG =
added in Python 2.5
18
- T_PYSSIZET =
added in Python 2.6
19
- T_NONE =
added in Python 3.0
20
- READONLY =
flags:
1
- READ_RESTRICTED =
2
- PY_WRITE_RESTRICTED =
4
- RESTRICTED =
(READ_RESTRICTED | PY_WRITE_RESTRICTED)
- Py_TPFLAGS_HAVE_GETCHARBUFFER =
Python 2.7
0x00000001<<0
- Py_TPFLAGS_HAVE_SEQUENCE_IN =
0x00000001<<1
- Py_TPFLAGS_GC =
was sometimes (0x00000001<<2) in Python <= 2.1
0
- Py_TPFLAGS_HAVE_INPLACEOPS =
0x00000001<<3
- Py_TPFLAGS_CHECKTYPES =
0x00000001<<4
- Py_TPFLAGS_HAVE_RICHCOMPARE =
0x00000001<<5
- Py_TPFLAGS_HAVE_WEAKREFS =
0x00000001<<6
- Py_TPFLAGS_HAVE_ITER =
0x00000001<<7
- Py_TPFLAGS_HAVE_CLASS =
0x00000001<<8
- Py_TPFLAGS_HAVE_INDEX =
0x00000001<<17
- Py_TPFLAGS_HAVE_NEWBUFFER =
0x00000001<<21
- Py_TPFLAGS_STRING_SUBCLASS =
0x00000001<<27
- Py_TPFLAGS_HEAPTYPE =
Python 3.0+ has only these:
0x00000001<<9
- Py_TPFLAGS_BASETYPE =
0x00000001<<10
- Py_TPFLAGS_READY =
0x00000001<<12
- Py_TPFLAGS_READYING =
0x00000001<<13
- Py_TPFLAGS_HAVE_GC =
0x00000001<<14
- Py_TPFLAGS_HAVE_VERSION_TAG =
0x00000001<<18
- Py_TPFLAGS_VALID_VERSION_TAG =
0x00000001<<19
- Py_TPFLAGS_IS_ABSTRACT =
0x00000001<<20
- Py_TPFLAGS_INT_SUBCLASS =
0x00000001<<23
- Py_TPFLAGS_LONG_SUBCLASS =
0x00000001<<24
- Py_TPFLAGS_LIST_SUBCLASS =
0x00000001<<25
- Py_TPFLAGS_TUPLE_SUBCLASS =
0x00000001<<26
- Py_TPFLAGS_BYTES_SUBCLASS =
0x00000001<<27
- Py_TPFLAGS_UNICODE_SUBCLASS =
0x00000001<<28
- Py_TPFLAGS_DICT_SUBCLASS =
0x00000001<<29
- Py_TPFLAGS_BASE_EXC_SUBCLASS =
0x00000001<<30
- Py_TPFLAGS_TYPE_SUBCLASS =
0x00000001<<31
- Py_TPFLAGS_HAVE_STACKLESS_EXTENSION_ =
only use this if we have the stackless extension
0x00000003<<15
- METH_VARARGS =
ml_flags should be one of:
0x0001
- METH_KEYWORDS =
args are a tuple of arguments
0x0002
- METH_NOARGS =
two arguments: the varargs and the kwargs
0x0004
- METH_O =
no arguments (NULL argument pointer)
0x0008
- METH_CLASS =
not sure when these are needed:
0x0010
- METH_STATIC =
for class methods
0x0020
- PYTHON_DESCRIPTION =
python_description
- PYTHON_VERSION =
python_version_string