module PyCall::LibPython

PyCall::LibPython::API

Constants

METH_CLASS

not sure when these are needed:

METH_KEYWORDS
METH_NOARGS
METH_O
METH_STATIC
METH_VARARGS

ml_flags should be one of:

PYTHON_DESCRIPTION
PYTHON_VERSION
PY_WRITE_RESTRICTED
Py_TPFLAGS_BASETYPE
Py_TPFLAGS_BASE_EXC_SUBCLASS
Py_TPFLAGS_BYTES_SUBCLASS
Py_TPFLAGS_CHECKTYPES
Py_TPFLAGS_DICT_SUBCLASS
Py_TPFLAGS_GC
Py_TPFLAGS_HAVE_CLASS
Py_TPFLAGS_HAVE_GC
Py_TPFLAGS_HAVE_GETCHARBUFFER

Python 2.7

Py_TPFLAGS_HAVE_INDEX
Py_TPFLAGS_HAVE_INPLACEOPS
Py_TPFLAGS_HAVE_ITER
Py_TPFLAGS_HAVE_NEWBUFFER
Py_TPFLAGS_HAVE_RICHCOMPARE
Py_TPFLAGS_HAVE_SEQUENCE_IN
Py_TPFLAGS_HAVE_STACKLESS_EXTENSION_

only use this if we have the stackless extension

Py_TPFLAGS_HAVE_VERSION_TAG
Py_TPFLAGS_HAVE_WEAKREFS
Py_TPFLAGS_HEAPTYPE

Python 3.0+ has only these:

Py_TPFLAGS_INT_SUBCLASS
Py_TPFLAGS_IS_ABSTRACT
Py_TPFLAGS_LIST_SUBCLASS
Py_TPFLAGS_LONG_SUBCLASS
Py_TPFLAGS_READY
Py_TPFLAGS_READYING
Py_TPFLAGS_STRING_SUBCLASS
Py_TPFLAGS_TUPLE_SUBCLASS
Py_TPFLAGS_TYPE_SUBCLASS
Py_TPFLAGS_UNICODE_SUBCLASS
Py_TPFLAGS_VALID_VERSION_TAG
READONLY

flags:

READ_RESTRICTED
RESTRICTED
T_BOOL
T_BYTE
T_CHAR
T_DOUBLE
T_FLOAT
T_INT
T_LONG
T_LONGLONG
T_NONE
T_OBJECT
T_OBJECT_EX
T_PYSSIZET
T_SHORT

types:

T_STRING
T_STRING_INPLACE
T_UBYTE
T_UINT
T_ULONG
T_ULONGLONG
T_USHORT

Attributes

handle[R]

Public Class Methods

const_missing(name) click to toggle source
Calls superclass method
# File lib/pycall/init.rb, line 13
def self.const_missing(name)
  case name
  when :API, :Conversion, :Helpers, :PYTHON_DESCRIPTION, :PYTHON_VERSION
    PyCall.init
    const_get(name)
  else
    super
  end
end