Package org.python.core
Class PyList
- java.lang.Object
-
- org.python.core.PyObject
-
- org.python.core.PySequence
-
- org.python.core.PySequenceList
-
- org.python.core.PyList
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Iterable,java.util.Collection,java.util.List,Traverseproc
- Direct Known Subclasses:
PyListDerived
public class PyList extends PySequenceList
- 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 intgListAllocatedStatusstatic PyTypeTYPE-
Fields inherited from class org.python.core.PyObject
gcMonitorGlobal
-
-
Constructor Summary
Constructors Constructor Description PyList()PyList(java.util.Collection<?> c)PyList(java.util.Iterator<PyObject> iter)PyList(PyObject o)PyList(PyObject[] elements)PyList(PyType type)PyList(PyType type, java.util.Collection c)PyList(PyType type, PyObject[] elements)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description PyObject__add__(PyObject o)Equivalent to the standard Python __add__ method.PyTuple__getnewargs__()PyObject__iadd__(PyObject o)Equivalent to the standard Python __iadd__ method.PyObject__imul__(PyObject o)Equivalent to the standard Python __imul__ method.PyObject__iter__()Return an iterator that is used to iterate the element of this sequence.int__len__()Equivalent to the standard Python __len__ method.PyObject__mul__(PyObject o)Equivalent to the standard Python __mul__ method.PyObject__radd__(PyObject o)Equivalent to the standard Python __radd__ method.PyIterator__reversed__()PyObject__rmul__(PyObject o)Equivalent to the standard Python __rmul__ method.voidadd(int index, java.lang.Object element)booleanadd(java.lang.Object o)booleanaddAll(int index, java.util.Collection c)booleanaddAll(java.util.Collection c)voidappend(PyObject o)Add a single element to the end of list.voidclear()booleancontains(java.lang.Object o)booleancontainsAll(java.util.Collection c)intcount(PyObject o)Return the number elements in the list that equals the argument.booleanequals(java.lang.Object other)Should almost never be overridden.voidextend(PyObject o)Append the elements in the argument sequence to the end of the list.static PyListfromList(java.util.List<PyObject> list)java.lang.Objectget(int index)PyObject[]getArray()Get the backing array.inthashCode()intindex(PyObject o)return smallest index where an element in the list equals the argument.intindex(PyObject o, int start)intindex(PyObject o, int start, int stop)intindexOf(java.lang.Object o)voidinsert(int index, PyObject o)Insert the argument element into the list at the specified index.booleanisEmpty()java.util.Iterator<java.lang.Object>iterator()intlastIndexOf(java.lang.Object o)java.util.ListIteratorlistIterator()java.util.ListIteratorlistIterator(int index)PyObjectpop()Removes and return the last element in the list.PyObjectpop(int n)Removes and return thenindexed element in the list.voidpyadd(int index, PyObject element)booleanpyadd(PyObject o)PyObjectpyget(int index)voidpyset(int index, PyObject element)booleanrefersDirectlyTo(PyObject ob)Optional operation.java.lang.Objectremove(int index)voidremove(int start, int stop)booleanremove(java.lang.Object o)voidremove(PyObject o)Remove the first occurence of the argument from the list.booleanremoveAll(java.util.Collection c)booleanretainAll(java.util.Collection c)voidreverse()Reverses the items of s in place.java.lang.Objectset(int index, java.lang.Object element)intsize()voidsort()voidsort(PyObject compare)voidsort(PyObject cmp, PyObject key, PyObject reverse)java.util.ListsubList(int fromIndex, int toIndex)java.lang.Object[]toArray()java.lang.Object[]toArray(java.lang.Object[] a)java.lang.StringtoString()inttraverse(Visitproc visit, java.lang.Object arg)Traverses all directly containedPyObjects.-
Methods inherited from class org.python.core.PySequence
__delitem__, __delslice__, __eq__, __finditem__, __finditem__, __ge__, __getitem__, __getslice__, __gt__, __le__, __lt__, __ne__, __nonzero__, __setitem__, __setitem__, __setslice__, __tojava__, 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__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delslice__, __dir__, __div__, __divmod__, __ensure_finalizer__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __float__, __floordiv__, __format__, __get__, __getattr__, __getattr__, __getitem__, __getslice__, __hash__, __hex__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iternext__, __itruediv__, __ixor__, __long__, __lshift__, __mod__, __neg__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __rand__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setslice__, __str__, __sub__, __truediv__, __trunc__, __unicode__, __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, asDouble, asIndex, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, bit_length, conjugate, delDict, delType, dispatch__init__, 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
-
gListAllocatedStatus
public volatile int gListAllocatedStatus
-
-
Constructor Detail
-
PyList
public PyList()
-
PyList
public PyList(PyType type)
-
PyList
public PyList(PyType type, java.util.Collection c)
-
PyList
public PyList(PyObject[] elements)
-
PyList
public PyList(java.util.Collection<?> c)
-
PyList
public PyList(PyObject o)
-
PyList
public PyList(java.util.Iterator<PyObject> iter)
-
-
Method Detail
-
__len__
public int __len__()
Description copied from class:PyObjectEquivalent to the standard Python __len__ method. Part of the mapping discipline.
-
__imul__
public PyObject __imul__(PyObject o)
Description copied from class:PyObjectEquivalent to the standard Python __imul__ method.
-
__mul__
public PyObject __mul__(PyObject o)
Description copied from class:PyObjectEquivalent to the standard Python __mul__ method.
-
__rmul__
public PyObject __rmul__(PyObject o)
Description copied from class:PyObjectEquivalent to the standard Python __rmul__ method.
-
__add__
public PyObject __add__(PyObject o)
Description copied from class:PyObjectEquivalent to the standard Python __add__ method.
-
__radd__
public PyObject __radd__(PyObject o)
Description copied from class:PyObjectEquivalent to the standard Python __radd__ method.
-
__iter__
public PyObject __iter__()
Description copied from class:PyObjectReturn an iterator that is used to iterate the element of this sequence. From version 2.2, this method is the primary protocol for looping over sequences.If a PyObject subclass should support iteration based in the __finditem__() method, it must supply an implementation of __iter__() like this:
public PyObject __iter__() { return new PySequenceIter(this); }When iterating over a python sequence from java code, it should be done with code like this:for (PyObject item : seq.asIterable()) { // Do something with item }- Overrides:
__iter__in classPySequence
-
__reversed__
public PyIterator __reversed__()
-
toString
public java.lang.String toString()
- Specified by:
toStringin classPySequenceList
-
append
public void append(PyObject o)
Add a single element to the end of list.- Parameters:
o- the element to add.
-
count
public int count(PyObject o)
Return the number elements in the list that equals the argument.- Parameters:
o- the argument to test for. Testing is done with the==operator.
-
index
public int index(PyObject o)
return smallest index where an element in the list equals the argument.- Parameters:
o- the argument to test for. Testing is done with the==operator.
-
index
public int index(PyObject o, int start)
-
index
public int index(PyObject o, int start, int stop)
-
insert
public void insert(int index, PyObject o)Insert the argument element into the list at the specified index.
Same ass[index:index] = [o] if index >= 0.- Parameters:
index- the position where the element will be inserted.o- the element to insert.
-
remove
public void remove(PyObject o)
Remove the first occurence of the argument from the list. The elements arecompared with the==operator.
Same asdel s[s.index(x)]- Parameters:
o- the element to search for and remove.
-
reverse
public void reverse()
Reverses the items of s in place. The reverse() methods modify the list in place for economy of space when reversing a large list. It doesn't return the reversed list to remind you of this side effect.
-
pop
public PyObject pop()
Removes and return the last element in the list.
-
pop
public PyObject pop(int n)
Removes and return thenindexed element in the list.- Parameters:
n- the index of the element to remove and return.
-
extend
public void extend(PyObject o)
Append the elements in the argument sequence to the end of the list.
Same ass[len(s):len(s)] = o.- Parameters:
o- the sequence of items to append to the list.
-
__iadd__
public PyObject __iadd__(PyObject o)
Description copied from class:PyObjectEquivalent to the standard Python __iadd__ method.
-
sort
public void sort()
-
sort
public void sort(PyObject compare)
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejava.util.Collection- Specified by:
hashCodein interfacejava.util.List- Specified by:
hashCodein classPySequenceList
-
__getnewargs__
public PyTuple __getnewargs__()
- Overrides:
__getnewargs__in classPyObject
-
add
public void add(int index, java.lang.Object element)- Specified by:
addin interfacejava.util.List- Specified by:
addin classPySequenceList
-
add
public boolean add(java.lang.Object o)
- Specified by:
addin interfacejava.util.Collection- Specified by:
addin interfacejava.util.List- Specified by:
addin classPySequenceList
-
addAll
public boolean addAll(int index, java.util.Collection c)- Specified by:
addAllin interfacejava.util.List- Specified by:
addAllin classPySequenceList
-
addAll
public boolean addAll(java.util.Collection c)
- Specified by:
addAllin interfacejava.util.Collection- Specified by:
addAllin interfacejava.util.List- Specified by:
addAllin classPySequenceList
-
clear
public void clear()
- Specified by:
clearin interfacejava.util.Collection- Specified by:
clearin interfacejava.util.List- Specified by:
clearin classPySequenceList
-
contains
public boolean contains(java.lang.Object o)
- Specified by:
containsin interfacejava.util.Collection- Specified by:
containsin interfacejava.util.List- Specified by:
containsin classPySequenceList
-
containsAll
public boolean containsAll(java.util.Collection c)
- Specified by:
containsAllin interfacejava.util.Collection- Specified by:
containsAllin interfacejava.util.List- Specified by:
containsAllin classPySequenceList
-
equals
public boolean equals(java.lang.Object other)
Description copied from class:PyObjectShould almost never be overridden. If overridden, it is the subclasses responsibility to ensure thata.equals(b) == trueiffcmp(a,b) == 0- Specified by:
equalsin interfacejava.util.Collection- Specified by:
equalsin interfacejava.util.List- Specified by:
equalsin classPySequenceList
-
get
public java.lang.Object get(int index)
- Specified by:
getin interfacejava.util.List- Specified by:
getin classPySequenceList
-
getArray
public PyObject[] getArray()
Description copied from class:PySequenceListGet the backing array. The array should not be modified. To get a copy of the array, seePySequenceList.toArray().- Specified by:
getArrayin classPySequenceList
-
indexOf
public int indexOf(java.lang.Object o)
- Specified by:
indexOfin interfacejava.util.List- Specified by:
indexOfin classPySequenceList
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmptyin interfacejava.util.Collection- Specified by:
isEmptyin interfacejava.util.List- Specified by:
isEmptyin classPySequenceList
-
iterator
public java.util.Iterator<java.lang.Object> iterator()
- Specified by:
iteratorin interfacejava.util.Collection- Specified by:
iteratorin interfacejava.lang.Iterable- Specified by:
iteratorin interfacejava.util.List- Specified by:
iteratorin classPySequenceList
-
lastIndexOf
public int lastIndexOf(java.lang.Object o)
- Specified by:
lastIndexOfin interfacejava.util.List- Specified by:
lastIndexOfin classPySequenceList
-
listIterator
public java.util.ListIterator listIterator()
- Specified by:
listIteratorin interfacejava.util.List- Specified by:
listIteratorin classPySequenceList
-
listIterator
public java.util.ListIterator listIterator(int index)
- Specified by:
listIteratorin interfacejava.util.List- Specified by:
listIteratorin classPySequenceList
-
pyadd
public void pyadd(int index, PyObject element)- Specified by:
pyaddin classPySequenceList
-
pyadd
public boolean pyadd(PyObject o)
- Specified by:
pyaddin classPySequenceList
-
pyget
public PyObject pyget(int index)
- Specified by:
pygetin classPySequenceList
-
pyset
public void pyset(int index, PyObject element)- Specified by:
pysetin classPySequenceList
-
remove
public java.lang.Object remove(int index)
- Specified by:
removein interfacejava.util.List- Specified by:
removein classPySequenceList
-
remove
public void remove(int start, int stop)- Specified by:
removein classPySequenceList
-
removeAll
public boolean removeAll(java.util.Collection c)
- Specified by:
removeAllin interfacejava.util.Collection- Specified by:
removeAllin interfacejava.util.List- Specified by:
removeAllin classPySequenceList
-
retainAll
public boolean retainAll(java.util.Collection c)
- Specified by:
retainAllin interfacejava.util.Collection- Specified by:
retainAllin interfacejava.util.List- Specified by:
retainAllin classPySequenceList
-
set
public java.lang.Object set(int index, java.lang.Object element)- Specified by:
setin interfacejava.util.List- Specified by:
setin classPySequenceList
-
size
public int size()
- Specified by:
sizein interfacejava.util.Collection- Specified by:
sizein interfacejava.util.List- Specified by:
sizein classPySequenceList
-
subList
public java.util.List subList(int fromIndex, int toIndex)- Specified by:
subListin interfacejava.util.List- Specified by:
subListin classPySequenceList
-
toArray
public java.lang.Object[] toArray()
- Specified by:
toArrayin interfacejava.util.Collection- Specified by:
toArrayin interfacejava.util.List- Specified by:
toArrayin classPySequenceList
-
toArray
public java.lang.Object[] toArray(java.lang.Object[] a)
- Specified by:
toArrayin interfacejava.util.Collection- Specified by:
toArrayin interfacejava.util.List- Specified by:
toArrayin classPySequenceList
-
remove
public boolean remove(java.lang.Object o)
- Specified by:
removein interfacejava.util.Collection- Specified by:
removein interfacejava.util.List- Specified by:
removein classPySequenceList
-
traverse
public int traverse(Visitproc visit, java.lang.Object arg)
Description copied from interface:TraverseprocTraverses all directly containedPyObjects. Like in CPython,argmust be passed unmodified tovisitas its second parameter. IfVisitproc.visit(PyObject, Object)returns nonzero, this return value must be returned immediately by traverse.Visitproc.visit(PyObject, Object)must not be called with anullPyObject-argument.- Specified by:
traversein interfaceTraverseproc- Overrides:
traversein classPySequenceList
-
refersDirectlyTo
public boolean refersDirectlyTo(PyObject ob)
Description copied from interface:TraverseprocOptional operation. Should only be implemented if it is more efficient than callingTraverseproc.traverse(Visitproc, Object)with a visitproc that just watches out forob. Must returnfalseifobisnull.- Specified by:
refersDirectlyToin interfaceTraverseproc- Overrides:
refersDirectlyToin classPySequenceList
-
-