/* 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*/ }; /* ------------------------------------------------------- */