6.2.4.2.5. indices

Comienzo python section to interscript/core/mxTools.py[6 /26 ] Siguiente Previo Primero Último
    32: #line 673 "mxTools.pak"
    33: def indices(object):
    34:   return tuple(range(len(object)))
    35: 
End python section to interscript/core/mxTools.py[6]
Comienzo C section to interscript/core/mxTools.c[7 /30 ] Siguiente Previo Primero Último
   561: #line 677 "mxTools.pak"
   562: 
   563: Py_C_Function( mxTools_indices,
   564:                "indices(object)\n\n"
   565:                "Returns tuple(range(len(object))).")
   566: {
   567:     register int n;
   568:     register int index;
   569:     register PyObject *t = 0;
   570:     PyObject *w;
   571: 
   572:     Py_GetArgObject(w);
   573: 
   574:     n = PyObject_Length(w);
   575:     if (n < 0)
   576:         Py_Error(PyExc_TypeError,
   577:                  "argument must have a __len__ method");
   578: 
   579:     t = PyTuple_New(n);
   580:     if (!t)
   581:         goto onError;
   582: 
   583:     for (index = 0; index < n; index++) {
   584:         register PyObject *v = PyInt_FromLong((long)index);
   585:         if (!v)
   586:             goto onError;
   587:         PyTuple_SET_ITEM(t,index,v);
   588:     }
   589: 
   590:     return t;
   591: 
   592:  onError:
   593:     Py_XDECREF(t);
   594:     return NULL;
   595: }
   596: 
End C section to interscript/core/mxTools.c[7]