Package org.python.core
Class PyUnicode
- java.lang.Object
-
- org.python.core.PyObject
-
- org.python.core.PySequence
-
- org.python.core.PyBaseString
-
- org.python.core.PyString
-
- org.python.core.PyUnicode
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.CharSequence,java.lang.Iterable<java.lang.Integer>,BufferProtocol
- Direct Known Subclasses:
PyUnicodeDerived
public class PyUnicode extends PyString implements java.lang.Iterable<java.lang.Integer>
a builtin python unicode string.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
-
-
Field Summary
Fields Modifier and Type Field Description static PyTypeTYPE-
Fields inherited from class org.python.core.PyObject
gcMonitorGlobal
-
-
Constructor Summary
Constructors Constructor Description PyUnicode()PyUnicode(char c)PyUnicode(int codepoint)PyUnicode(int[] codepoints)PyUnicode(java.lang.String string)Construct a PyUnicode interpreting the Java String argument as UTF-16.PyUnicode(java.lang.String string, boolean isBasic)Construct a PyUnicode interpreting the Java String argument as UTF-16.PyUnicode(java.util.Collection<java.lang.Integer> ucs4)PyUnicode(java.util.Iterator<java.lang.Integer> iter)PyUnicode(PyString pystring)PyUnicode(PyType subtype, java.lang.String string)PyUnicode(PyType subtype, PyString pystring)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description PyObject__add__(PyObject other)Equivalent to the standard Python __add__ method.PyComplex__complex__()Equivalent to the standard Python __complex__ method.PyObject__format__(PyObject formatSpec)int__len__()Equivalent to the standard Python __len__ method.PyObject__mod__(PyObject other)Equivalent to the standard Python __mod__ methodPyString__repr__()Equivalent to the standard Python __repr__ method.PyString__str__()Equivalent to the standard Python __str__ method.PyUnicode__unicode__()doubleatof()Convert this PyString to a floating-point value according to Python rules.intatoi(int base)PyLongatol(int base)static java.lang.StringcheckEncoding(java.lang.String s)PyStringcreateInstance(java.lang.String str)Create an instance of the same type as this object, from the Java String given as argument.static PyUnicodefromInterned(java.lang.String interned)Creates a PyUnicode from an already interned String.intgetCodePointCount()intgetInt(int i)booleanisBasicPlane()Determine whether the string consists entirely of basic-plane characters.java.util.Iterator<java.lang.Integer>iterator()PyStringjoin(PyObject seq)java.util.Iterator<java.lang.Integer>newSubsequenceIterator()Get an iterator over the code point sequence.java.util.Iterator<java.lang.Integer>newSubsequenceIterator(int start, int stop, int step)Get an iterator over a slice of the code point sequence.PyTuplepartition(PyObject sep)Equivalent to Pythonstr.partition(), splits thePyStringat the first occurrence ofsepObjreturning aPyTuplecontaining the part before the separator, the separator itself, and the part after the separator.PyTuplerpartition(PyObject sep)Equivalent to Pythonstr.rpartition(), splits thePyStringat the last occurrence ofsepObjreturning aPyTuplecontaining the part before the separator, the separator itself, and the part after the separator.java.lang.Stringsubstring(int start, int end)Return a substring of this object as a Java String.int[]toCodePoints()-
Methods inherited from class org.python.core.PyString
__cmp__, __contains__, __eq__, __float__, __ge__, __getnewargs__, __gt__, __int__, __invert__, __le__, __long__, __lt__, __mul__, __ne__, __neg__, __pos__, __rmul__, __tojava__, asDouble, asInt, asLong, asName, asString, asString, atoi, atol, capitalize, center, charAt, count, count, count, count, count, count, decode, decode, decode, decode_UnicodeEscape, encode, encode, encode, encode_UnicodeEscape, encode_UnicodeEscape, endswith, endswith, endswith, expandtabs, expandtabs, find, find, find, find, find, find, getBuffer, getString, hashCode, index, index, index, index, index, index, internedString, isalnum, isalpha, isdecimal, isdigit, islower, isnumeric, isspace, istitle, isunicode, isupper, length, ljust, ljust, lower, lstrip, lstrip, lstrip, replace, replace, rfind, rfind, rfind, rfind, rfind, rfind, rindex, rindex, rindex, rindex, rindex, rindex, rjust, rsplit, rsplit, rsplit, rsplit, rsplit, rstrip, rstrip, rstrip, split, split, split, split, split, splitlines, splitlines, startswith, startswith, startswith, str___mod__, strip, strip, strip, subSequence, swapcase, title, toBytes, toString, translate, translate, translate, translate, upper, zfill
-
Methods inherited from class org.python.core.PySequence
__delitem__, __delslice__, __finditem__, __finditem__, __getitem__, __getslice__, __iter__, __nonzero__, __setitem__, __setitem__, __setslice__, isMappingType, isNumberType, isSequenceType
-
Methods inherited from class org.python.core.PyObject
__abs__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __coerce_ex__, __delattr__, __delattr__, __delete__, __delitem__, __delslice__, __dir__, __div__, __divmod__, __ensure_finalizer__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __floordiv__, __get__, __getattr__, __getattr__, __getitem__, __getslice__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __ior__, __ipow__, __irshift__, __isub__, __iternext__, __itruediv__, __ixor__, __lshift__, __not__, __oct__, __or__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __rfloordiv__, __rlshift__, __rmod__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setslice__, __sub__, __truediv__, __trunc__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asIndex, asIndex, asInt, asIterable, asLong, asName, asStringOrNull, asStringOrNull, bit_length, conjugate, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType
-
-
-
-
Field Detail
-
TYPE
public static final PyType TYPE
-
-
Constructor Detail
-
PyUnicode
public PyUnicode()
-
PyUnicode
public PyUnicode(java.lang.String string)
Construct a PyUnicode interpreting the Java String argument as UTF-16.- Parameters:
string- UTF-16 string encoding the characters (as Java).
-
PyUnicode
public PyUnicode(java.lang.String string, boolean isBasic)Construct a PyUnicode interpreting the Java String argument as UTF-16. If it is known that the string contains no supplementary characters, argument isBasic may be set true by the caller. If it is false, the PyUnicode will scan the string to find out.- Parameters:
string- UTF-16 string encoding the characters (as Java).isBasic- true if it is known that only BMP characters are present.
-
PyUnicode
public PyUnicode(PyType subtype, java.lang.String string)
-
PyUnicode
public PyUnicode(PyString pystring)
-
PyUnicode
public PyUnicode(char c)
-
PyUnicode
public PyUnicode(int codepoint)
-
PyUnicode
public PyUnicode(int[] codepoints)
-
PyUnicode
public PyUnicode(java.util.Iterator<java.lang.Integer> iter)
-
PyUnicode
public PyUnicode(java.util.Collection<java.lang.Integer> ucs4)
-
-
Method Detail
-
toCodePoints
public int[] toCodePoints()
- Overrides:
toCodePointsin classPyString
-
substring
public java.lang.String substring(int start, int end)Return a substring of this object as a Java String. The indices are code point indices, not UTF-16 (char) indices. For example:PyUnicode u = new PyUnicode("..𐀂𐀃..."); // (Python) u = u'..\U00010002\U00010003...' String s = u.substring(2, 4); // = "𐀂𐀃" (Java)
-
fromInterned
public static PyUnicode fromInterned(java.lang.String interned)
Creates a PyUnicode from an already interned String. Just means it won't be reinterned if used in a place that requires interned Strings.
-
isBasicPlane
public boolean isBasicPlane()
Determine whether the string consists entirely of basic-plane characters. For aPyString, of course, it is alwaystrue, but this is useful in cases where either aPyStringor aPyUnicodeis acceptable.- Overrides:
isBasicPlanein classPyString- Returns:
- true if the string consists only of BMP characters
-
getCodePointCount
public int getCodePointCount()
-
checkEncoding
public static java.lang.String checkEncoding(java.lang.String s)
-
createInstance
public PyString createInstance(java.lang.String str)
Description copied from class:PyStringCreate an instance of the same type as this object, from the Java String given as argument. This is to be overridden in a subclass to return its own type.- Overrides:
createInstancein classPyString- Parameters:
str- to wrap- Returns:
-
__mod__
public PyObject __mod__(PyObject other)
Description copied from class:PyObjectEquivalent to the standard Python __mod__ method
-
__unicode__
public PyUnicode __unicode__()
- Overrides:
__unicode__in classPyString
-
__str__
public PyString __str__()
Description copied from class:PyObjectEquivalent to the standard Python __str__ method. This method should not typically need to be overridden. The easiest way to configure the string representation of aPyObjectis to override the standard JavatoStringmethod.
-
__len__
public int __len__()
Description copied from class:PyObjectEquivalent to the standard Python __len__ method. Part of the mapping discipline.
-
__repr__
public PyString __repr__()
Description copied from class:PyObjectEquivalent to the standard Python __repr__ method. This method should not typically need to be overrriden. The easiest way to configure the string representation of aPyObjectis to override the standard JavatoStringmethod.
-
newSubsequenceIterator
public java.util.Iterator<java.lang.Integer> newSubsequenceIterator()
Get an iterator over the code point sequence.
-
newSubsequenceIterator
public java.util.Iterator<java.lang.Integer> newSubsequenceIterator(int start, int stop, int step)Get an iterator over a slice of the code point sequence.
-
partition
public PyTuple partition(PyObject sep)
Description copied from class:PyStringEquivalent to Pythonstr.partition(), splits thePyStringat the first occurrence ofsepObjreturning aPyTuplecontaining the part before the separator, the separator itself, and the part after the separator.- Overrides:
partitionin classPyString- Parameters:
sep- str, unicode or object implementingBufferProtocol- Returns:
- tuple of parts
-
rpartition
public PyTuple rpartition(PyObject sep)
Description copied from class:PyStringEquivalent to Pythonstr.rpartition(), splits thePyStringat the last occurrence ofsepObjreturning aPyTuplecontaining the part before the separator, the separator itself, and the part after the separator.- Overrides:
rpartitionin classPyString- Parameters:
sep- str, unicode or object implementingBufferProtocol- Returns:
- tuple of parts
-
__format__
public PyObject __format__(PyObject formatSpec)
- Overrides:
__format__in classPyString
-
iterator
public java.util.Iterator<java.lang.Integer> iterator()
- Specified by:
iteratorin interfacejava.lang.Iterable<java.lang.Integer>
-
__complex__
public PyComplex __complex__()
Description copied from class:PyObjectEquivalent to the standard Python __complex__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python complex number.- Overrides:
__complex__in classPyString- Returns:
- a complex number corresponding to the value of this object.
-
-