/Tools/modulator/Templates/object_tp_as_number
http://unladen-swallow.googlecode.com/ · #! · 169 lines · 143 code · 26 blank · 0 comment · 0 complexity · e9ccbf9accf18cadc561e4bad8526e3c MD5 · raw file
- /* Code to access $name$ objects as numbers */
- static PyObject *
- $abbrev$_add($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX Add them */
- }
- static PyObject *
- $abbrev$_sub($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX Subtract them */
- }
- static PyObject *
- $abbrev$_mul($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX Multiply them */
- }
- static PyObject *
- $abbrev$_div($abbrev$object *x, $abbrev$object *y)
- {
- /* XXXX Divide them */
- }
- static PyObject *
- $abbrev$_mod($abbrev$object *x, $abbrev$object *y)
- {
- /* XXXX Modulo them */
- }
- static PyObject *
- $abbrev$_divmod($abbrev$object *x, $abbrev$object *y)
- {
- /* XXXX Return 2-tuple with div and mod */
- }
- static PyObject *
- $abbrev$_pow($abbrev$object *v, $abbrev$object *w, $abbrev$object *z)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_neg($abbrev$object *v)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_pos($abbrev$object *v)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_abs($abbrev$object *v)
- {
- /* XXXX */
- }
- static int
- $abbrev$_nonzero($abbrev$object *v)
- {
- /* XXXX Return 1 if non-zero */
- }
- static PyObject *
- $abbrev$_invert($abbrev$object *v)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_lshift($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_rshift($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_and($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_xor($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_or($abbrev$object *v, $abbrev$object *w)
- {
- /* XXXX */
- }
- static int
- $abbrev$_coerce(PyObject **pv, PyObject **pw)
- {
- /* XXXX I haven't a clue... */
- return 1;
- }
- static PyObject *
- $abbrev$_int($abbrev$object *v)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_long($abbrev$object *v)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_float($abbrev$object *v)
- {
- /* XXXX */
- }
- static PyObject *
- $abbrev$_oct($abbrev$object *v)
- {
- /* XXXX Return object as octal stringobject */
- }
- static PyObject *
- $abbrev$_hex($abbrev$object *v)
- {
- /* XXXX Return object as hex stringobject */
- }
- static PyNumberMethods $abbrev$_as_number = {
- (binaryfunc)$abbrev$_add, /*nb_add*/
- (binaryfunc)$abbrev$_sub, /*nb_subtract*/
- (binaryfunc)$abbrev$_mul, /*nb_multiply*/
- (binaryfunc)$abbrev$_div, /*nb_divide*/
- (binaryfunc)$abbrev$_mod, /*nb_remainder*/
- (binaryfunc)$abbrev$_divmod, /*nb_divmod*/
- (ternaryfunc)$abbrev$_pow, /*nb_power*/
- (unaryfunc)$abbrev$_neg, /*nb_negative*/
- (unaryfunc)$abbrev$_pos, /*nb_positive*/
- (unaryfunc)$abbrev$_abs, /*nb_absolute*/
- (inquiry)$abbrev$_nonzero, /*nb_nonzero*/
- (unaryfunc)$abbrev$_invert, /*nb_invert*/
- (binaryfunc)$abbrev$_lshift, /*nb_lshift*/
- (binaryfunc)$abbrev$_rshift, /*nb_rshift*/
- (binaryfunc)$abbrev$_and, /*nb_and*/
- (binaryfunc)$abbrev$_xor, /*nb_xor*/
- (binaryfunc)$abbrev$_or, /*nb_or*/
- (coercion)$abbrev$_coerce, /*nb_coerce*/
- (unaryfunc)$abbrev$_int, /*nb_int*/
- (unaryfunc)$abbrev$_long, /*nb_long*/
- (unaryfunc)$abbrev$_float, /*nb_float*/
- (unaryfunc)$abbrev$_oct, /*nb_oct*/
- (unaryfunc)$abbrev$_hex, /*nb_hex*/
- };
- /* ------------------------------------------------------- */