@@ -281,11 +281,19 @@ PYBIND11_MODULE(_moose, m)
281281 .def_property_readonly (" id" , [](ObjId &oid) -> Id { return oid.id ; })
282282 .def_property_readonly (" dataIndex" ,
283283 [](ObjId &oid) { return oid.dataIndex ; })
284+ .def (" getDataIndex" , [](const ObjId &oid) { return oid.dataIndex ; })
285+
284286 .def_property_readonly (" fieldIndex" ,
285287 [](ObjId &oid) { return oid.fieldIndex ; })
288+
289+ .def (" getFieldIndex" , [](const ObjId &oid) { return oid.fieldIndex ; })
290+
286291 .def_property_readonly (
287292 " type" , [](ObjId &oid) { return oid.element ()->cinfo ()->name (); })
288293
294+ .def (" getType" ,
295+ [](ObjId &oid) { return oid.element ()->cinfo ()->name (); })
296+
289297 .def_property_readonly (" path" ,
290298 [](const ObjId &oid) { return oid.id .path (); })
291299
@@ -335,14 +343,15 @@ PYBIND11_MODULE(_moose, m)
335343 .def (" __ne__" , [](const MooseVec &a,
336344 const MooseVec &b) { return a.obj () != b.obj (); })
337345 .def (" __len__" , &MooseVec::len)
338- .def (" __iter__" ,
339- [](MooseVec &v) {
340- // Generate an iterator which is a vector<ObjId>. And then
341- // pass the reference to the objects.
342- v.generateIterator ();
343- return py::make_iterator (v.objref ().begin (), v.objref ().end ());
344- },
345- py::keep_alive<0 , 1 >())
346+ .def (
347+ " __iter__" ,
348+ [](MooseVec &v) {
349+ // Generate an iterator which is a vector<ObjId>. And then
350+ // pass the reference to the objects.
351+ v.generateIterator ();
352+ return py::make_iterator (v.objref ().begin (), v.objref ().end ());
353+ },
354+ py::keep_alive<0 , 1 >())
346355 .def (" __getitem__" , &MooseVec::getItem)
347356 .def (" __getitem__" , &MooseVec::getItemRange)
348357
@@ -357,8 +366,9 @@ PYBIND11_MODULE(_moose, m)
357366 })
358367 // This is to provide old API support. Some scripts use .vec even on a
359368 // vec to get a vec. So silly or so Zen?!
360- .def_property_readonly (" vec" , [](const MooseVec &vec) { return &vec; },
361- py::return_value_policy::reference_internal)
369+ .def_property_readonly (
370+ " vec" , [](const MooseVec &vec) { return &vec; },
371+ py::return_value_policy::reference_internal)
362372 .def_property_readonly (" type" ,
363373 [](const MooseVec &v) { return " moose.vec" ; })
364374 .def (" connect" , &MooseVec::connectToSingle)
@@ -377,8 +387,9 @@ PYBIND11_MODULE(_moose, m)
377387 */
378388
379389 m.def (" seed" , [](py::object &a) { moose::mtseed (a.cast <int >()); });
380- m.def (" rand" , [](double a, double b) { return moose::mtrand (a, b); },
381- " a" _a = 0 , " b" _a = 1 );
390+ m.def (
391+ " rand" , [](double a, double b) { return moose::mtrand (a, b); },
392+ " a" _a = 0 , " b" _a = 1 );
382393 // This is a wrapper to Shell::wildcardFind. The python interface must
383394 // override it.
384395 m.def (" wildcardFind" , &wildcardFind2);
0 commit comments