public PyList(PyObject o) { this(TYPE); for (PyObject item : o.asIterable()) { list.add(item); } }
/** * Write a list of strings to the file. */ public void writelines(PyObject lines) { for (PyObject line : lines.asIterable()) { write(line); } }
final boolean object___contains__(PyObject o) { for (PyObject item : asIterable()) { if (o.equals(item)) { return true; } } return false; }
final boolean allContainedIn(PyObject self, PyObject other) { for (PyObject ob_value: self.asIterable()) { if (!other.__contains__(ob_value)) { return false; } } return true; }
@ExposedMethod(doc = BuiltinDocs.list_extend_doc) final synchronized void list_extend(PyObject o) { if (o instanceof PyList) { list.addAll(((PyList) o).list); } else { for (PyObject item : o.asIterable()) { list.add(item); } } gListAllocatedStatus = list.size(); }
@Override public PyObject __call__(PyObject obj) { List jList = asList(); if (obj instanceof Collection) { jList.addAll((Collection) obj); } else { for (PyObject item : obj.asIterable()) { jList.add(item); } } return self; } };
@Override public PyObject __call__(PyObject obj) { List jList = asList(); List extension = new ArrayList(); // Extra step to build the extension list is necessary // in case of adding to oneself for (PyObject item : obj.asIterable()) { extension.add(item); } jList.addAll(extension); return Py.None; } };
/** * Merge another PyObject via its keys() method * * @param other a PyObject with a keys() method * @param keys the result of other's keys() method */ private void mergeFromKeys(PyObject other, PyObject keys) { for (PyObject key : keys.asIterable()) { __setitem__(key, other.__getitem__(key)); } }
public static PyObject sum(PyObject seq, PyObject result) { if (result instanceof PyString) { throw Py.TypeError("sum() can't sum strings [use ''.join(seq) instead]"); } for (PyObject item : seq.asIterable()) { result = result._add(item); } return result; }
/** * Merge another PyObject via its keys() method * * @param other a PyObject with a keys() method * @param keys the result of other's keys() method */ private void mergeFromKeys(PyObject other, PyObject keys) { for (PyObject key : keys.asIterable()) { dict___setitem__(key, other.__getitem__(key)); } }
protected void mergeListAttr(PyDictionary accum, String attr) { PyObject obj = __findattr__(attr); if (obj == null) { return; } if (obj instanceof PyList) { for (PyObject name : obj.asIterable()) { accum.__setitem__(name, Py.None); } } }
public static int countOf(PyObject seq, PyObject item) { int count = 0; for (PyObject tmp : seq.asIterable()) { if (item._eq(tmp).__nonzero__()) { count++; } } return count; }
@ExposedMethod(doc = BuiltinDocs.bytearray_join_doc) final PyByteArray bytearray_join(PyObject iterable) { return basebytes_join(iterable.asIterable()); }
private void mergeFromKeys(PyObject other, PyObject keys) { for (PyObject key : keys.asIterable()) { jmap.put(Py.tojava(key, Object.class), Py.tojava(other.__getitem__(key), Object.class)); } }
public static PatternObject compile(PyString pattern, int flags, PyObject code, int groups, PyObject groupindex, PyObject indexgroup) { int[] ccode = new int[code.__len__()]; int i = 0; for (PyObject item : code.asIterable()) { ccode[i++] = (int)item.asLong(); } return new PatternObject(pattern, flags, ccode, groups, groupindex, indexgroup); }
@ExposedClassMethod(defaults = "Py.None", doc = BuiltinDocs.dict_fromkeys_doc) static PyObject dict_fromkeys(PyType type, PyObject keys, PyObject value) { PyObject d = type.__call__(); for (PyObject o : keys.asIterable()) { d.__setitem__(o, value); } return d; }
@ExposedClassMethod(defaults = "Py.None", doc = BuiltinDocs.dict_fromkeys_doc) static PyObject stringmap_fromkeys(PyType type, PyObject keys, PyObject value) { PyObject d = type.__call__(); for (PyObject o : keys.asIterable()) { d.__setitem__(o, value); } return d; }
@ExposedMethod(doc = BuiltinDocs.BaseException___setstate___doc) final PyObject BaseException___setstate__(PyObject state) { if (state != Py.None) { if (!(state instanceof PyStringMap) && !(state instanceof PyDictionary)) { throw Py.TypeError("state is not a dictionary"); } for (PyObject key : state.asIterable()) { __setattr__((PyString)key, state.__finditem__(key)); } } return Py.None; }
@ExposedMethod(doc = writelines_doc) final void _IOBase_writelines(PyObject lines) { _checkClosed(); // Either an error, or a thing we can __call__() PyObject writeMethod = __getattr__("write"); for (PyObject line : lines.asIterable()) { writeMethod.__call__(line); } }
public String[] getEnv() { PyObject items = imp.load("os").__getattr__("environ").invoke("items"); String[] env = new String[items.__len__()]; int i = 0; for (PyObject item : items.asIterable()) { env[i++] = String.format("%s=%s", item.__getitem__(0), item.__getitem__(1)); } return env; }