public PyObject lookup_error(String handlerName) { if (handlerName == null) { handlerName = "strict"; } PyObject handler = errorHandlers.__finditem__(handlerName.intern()); if (handler == null) { throw new PyException(Py.LookupError, "unknown error handler name '" + handlerName + "'"); } return handler; } }
public PyObject __getitem__(String key) { PyObject o = __finditem__(key); if (null == o) { throw Py.KeyError(key); } else { return o; } }
public synchronized PyObject __finditem__(String key) { PyObject pyo = super.__finditem__(key); if (pyo == null) { // use "null" without "Py.None", because we override __finditem__ Object val = getFromNamespace(key); if (val != UNDEFINED) return Py.java2py(val); } return pyo; } }
@Override public PyObject __finditem__(PyObject key) { if (key instanceof PyString) { return __finditem__(((PyString)key).internedString()); } return table.get(key); }
@ExposedMethod(defaults = "Py.None", doc = BuiltinDocs.dict_get_doc) final PyObject stringmap_get(PyObject key, PyObject defaultObj) { PyObject obj = __finditem__(key); return obj == null ? defaultObj : obj; }
public synchronized PyObject __finditem__(String key) { PyObject pyo = super.__finditem__(key); if (pyo == null) { // use "null" without "Py.None", because we override __finditem__ Object val = getFromNamespace(key); if (val != UNDEFINED) return Py.java2py(val); } return pyo; } }
/** * Add statically known classes. * * @param classes * their names as comma-separated string */ public void addPlaceholders(String classes) { StringTokenizer tok = new StringTokenizer(classes, ",@"); while (tok.hasMoreTokens()) { String p = tok.nextToken(); String name = p.trim().intern(); if (clsSet.__finditem__(name) == null) clsSet.__setitem__(name, Py.One); } }
public PyJavaPackage addPackage(String name, String jarfile) { int dot = name.indexOf('.'); String firstName=name; String lastName=null; if (dot != -1) { firstName = name.substring(0,dot); lastName = name.substring(dot+1, name.length()); } firstName = firstName.intern(); PyJavaPackage p = (PyJavaPackage)__dict__.__finditem__(firstName); if (p == null) { String pname = __name__.length() == 0 ? firstName : __name__+'.'+firstName; p = new PyJavaPackage(pname, __mgr__, jarfile); __dict__.__setitem__(firstName, p); } else { // this code is ok here, because this is not needed for // a top level package if (jarfile == null || !jarfile.equals(p.__file__)) p.__file__ = null; } if (lastName != null) return p.addPackage(lastName, jarfile); else return p; }
@ExposedMethod(doc = BuiltinDocs.dict___getitem___doc) final PyObject stringmap___getitem__(PyObject key) { if (key instanceof PyString) { return __getitem__(((PyString)key).internedString()); } else { PyObject o = __finditem__(key); if (null == o) { throw Py.KeyError(key); } else { return o; } } }
@ExposedMethod(names = {"__str__", "__repr__"}, doc = BuiltinDocs.object___str___doc) final String FileIO_toString() { if (closed()) { return "<_io.FileIO [closed]>"; } else { PyObject name = fastGetDict().__finditem__("name"); if (name != null && (name instanceof PyString)) { String xname = name.asString(); if (name instanceof PyUnicode) { xname = PyString.encode_UnicodeEscape(xname, false); } return String.format("<_io.FileIO name='%s' mode='%s'>", xname, mode); } else { return String.format("<_io.FileIO fd=%s mode='%s'>", fileno(), mode); } } }
public static PyString intern(PyObject obj) { if (!(obj instanceof PyString) || obj instanceof PyUnicode) { throw Py.TypeError("intern() argument 1 must be string, not " + obj.getType().fastGetName()); } if (obj.getType() != PyString.TYPE) { throw Py.TypeError("can't intern subclass of string"); } PyString s = (PyString)obj; String istring = s.internedString(); PyObject ret = internedStrings.__finditem__(istring); if (ret != null) { return (PyString)ret; } internedStrings.__setitem__(istring, s); return s; }
public PyObject __findattr_ex__(String name) { PyObject ret = __dict__.__finditem__(name); if (ret != null) return ret; if (__mgr__.packageExists(__name__,name)) { __mgr__.notifyPackageImport(__name__,name); return addPackage(name); } Class<?> c = __mgr__.findClass(__name__,name); if (c != null) return addClass(name,c); if (name == "__name__") return new PyString(__name__); if (name == "__dict__") return __dict__; if (name == "__mgr__") return Py.java2py(__mgr__); if (name == "__file__") { if (__file__ != null) return new PyString(__file__); return Py.None; } return null; }
public PyTuple lookup(String encoding) { PyString v = new PyString(normalizestring(encoding)); PyObject cached = searchCache.__finditem__(v); if (cached != null) { return (PyTuple)cached; } if (searchPath.__len__() == 0) { throw new PyException(Py.LookupError, "no codec search functions registered: can't find encoding '" + encoding + "'"); } for (PyObject func : searchPath.asIterable()) { PyObject created = func.__call__(v); if (created == Py.None) { continue; } if (!(created instanceof PyTuple) || created.__len__() != 4) { throw Py.TypeError("codec search functions must return 4-tuples"); } searchCache.__setitem__(v, created); return (PyTuple)created; } throw new PyException(Py.LookupError, "unknown encoding '" + encoding + "'"); }
return c; PyObject avalue = __finditem__(akey); PyObject bvalue = other.__finditem__(bkey); c = avalue._cmp(bvalue);