~mdw
/
catacomb-python
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
algorithms.py: Fiddling with whitespace.
[catacomb-python]
/
field.c
diff --git
a/field.c
b/field.c
index
eafa42f
..
f17f4d9
100644
(file)
--- a/
field.c
+++ b/
field.c
@@
-230,11
+230,13
@@
end:
static long fe_pyhash(PyObject *me)
{
static long fe_pyhash(PyObject *me)
{
- long i = mp_tolong(FE_X(me));
- i ^= 0xdcf62d6c; /* random perturbance */
- if (i == -1)
- i = -2;
- return (i);
+ size_t sz = FE_F(me)->noctets;
+ uint32 h = 0xe0c127ca + FE_F(me)->ops->ty;
+ octet *p = xmalloc(sz);
+ mp_storeb(FE_X(me), p, sz);
+ h = unihash_hash(&unihash_global, h, p, sz);
+ xfree(p);
+ return (h % LONG_MAX);
}
static int fe_pycoerce(PyObject **x, PyObject **y)
}
static int fe_pycoerce(PyObject **x, PyObject **y)
@@
-406,7
+408,7
@@
static PyNumberMethods fe_pynumber = {
static PyTypeObject fe_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject fe_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.FE",
/* @tp_name@ */
+ "
FE",
/* @tp_name@ */
sizeof(fe_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(fe_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
@@
-536,7
+538,7
@@
static PyMethodDef field_pymethods[] = {
static PyTypeObject field_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject field_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.Field",
/* @tp_name@ */
+ "
Field",
/* @tp_name@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
@@
-614,7
+616,7
@@
static PyGetSetDef primefield_pygetset[] = {
static PyTypeObject primefield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject primefield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.PrimeField",
/* @tp_name@ */
+ "
PrimeField",
/* @tp_name@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
@@
-681,7
+683,7
@@
end:
static PyTypeObject niceprimefield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject niceprimefield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.NicePrimeField",
/* @tp_name@ */
+ "
NicePrimeField",
/* @tp_name@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
@@
-741,7
+743,7
@@
static PyGetSetDef binfield_pygetset[] = {
static PyTypeObject binfield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject binfield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.BinField",
/* @tp_name@ */
+ "
BinField",
/* @tp_name@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
@@
-814,7
+816,7
@@
static PyGetSetDef binpolyfield_pygetset[] = {
static PyTypeObject binpolyfield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject binpolyfield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.BinPolyField",
/* @tp_name@ */
+ "
BinPolyField",
/* @tp_name@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
@@
-896,7
+898,7
@@
static PyGetSetDef binnormfield_pygetset[] = {
static PyTypeObject binnormfield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
static PyTypeObject binnormfield_pytype_skel = {
PyObject_HEAD_INIT(0) 0, /* Header */
- "
catacomb.BinNormField",
/* @tp_name@ */
+ "
BinNormField",
/* @tp_name@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */
sizeof(field_pyobj), /* @tp_basicsize@ */
0, /* @tp_itemsize@ */