Update of /cvsroot/python/python/dist/src/Objects In directory usw-pr-cvs1:/tmp/cvs-serv7316/Objects Modified Files: structseq.c Log Message: Add PyStructSequence_UnnamedField. Add stat_float_times. Use integers in stat tuple, optionally floats in named fields. Index: structseq.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/structseq.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** structseq.c 12 Apr 2002 03:05:37 -0000 1.8 --- structseq.c 16 Oct 2002 18:27:39 -0000 1.9 *************** *** 9,12 **** --- 9,16 ---- static char real_length_key[] = "n_fields"; + /* Fields with this name have only a field index, not a field name. + They are only allowed for indices < n_visible_fields. */ + char *PyStructSequence_UnnamedField = "unnamed field"; + #define VISIBLE_SIZE(op) ((op)->ob_size) #define VISIBLE_SIZE_TP(tp) PyInt_AsLong( \ *************** *** 333,340 **** PyObject *dict; PyMemberDef* members; ! int n_members, i; for (i = 0; desc->fields[i].name != NULL; ++i) ! ; n_members = i; --- 337,346 ---- PyObject *dict; PyMemberDef* members; ! int n_members, n_unnamed_members, i, k; + n_unnamed_members = 0; for (i = 0; desc->fields[i].name != NULL; ++i) ! if (desc->fields[0].name == PyStructSequence_UnnamedField) ! n_unnamed_members++; n_members = i; *************** *** 346,360 **** type->tp_itemsize = 0; ! members = PyMem_NEW(PyMemberDef, n_members+1); ! for (i = 0; i < n_members; ++i) { ! members[i].name = desc->fields[i].name; ! members[i].type = T_OBJECT; ! members[i].offset = offsetof(PyStructSequence, ob_item) + i * sizeof(PyObject*); ! members[i].flags = READONLY; ! members[i].doc = desc->fields[i].doc; } ! members[n_members].name = NULL; type->tp_members = members; --- 352,369 ---- type->tp_itemsize = 0; ! members = PyMem_NEW(PyMemberDef, n_members-n_unnamed_members+1); ! for (i = k = 0; i < n_members; ++i) { ! if (desc->fields[i].name == PyStructSequence_UnnamedField) ! continue; ! members[k].name = desc->fields[i].name; ! members[k].type = T_OBJECT; ! members[k].offset = offsetof(PyStructSequence, ob_item) + i * sizeof(PyObject*); ! members[k].flags = READONLY; ! members[k].doc = desc->fields[i].doc; ! k++; } ! members[k].name = NULL; type->tp_members = members;
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4