org.python.core
Class PyTuple

java.lang.Object
  extended by org.python.core.PyObject
      extended by org.python.core.PySequence
          extended by org.python.core.PySequenceList
              extended by org.python.core.PyTuple
All Implemented Interfaces:
Serializable, Iterable, Collection, List
Direct Known Subclasses:
PyStatResult, PyTimeTuple, PyTupleDerived

public class PyTuple
extends PySequenceList
implements List

A builtin python tuple.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
 
Field Summary
static PyType TYPE
           
 
Constructor Summary
PyTuple()
           
PyTuple(PyObject... elements)
           
PyTuple(PyObject[] elements, boolean copy)
           
PyTuple(PyType subtype, PyObject[] elements)
           
PyTuple(PyType subtype, PyObject[] elements, boolean copy)
           
 
Method Summary
 PyObject __add__(PyObject generic_other)
          Equivalent to the standard Python __add__ method
 PyTuple __getnewargs__()
           
 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 __rmul__(PyObject o)
          Equivalent to the standard Python __rmul__ method
 void add(int index, Object element)
           
 boolean add(Object o)
           
 boolean addAll(Collection coll)
           
 boolean addAll(int index, Collection c)
           
 void clear()
           
 boolean contains(Object o)
           
 boolean containsAll(Collection c)
           
 boolean equals(Object other)
          Should almost never be overridden.
static PyTuple fromIterable(PyObject iterable)
          Return a new PyTuple from an iterable.
 Object get(int index)
           
 PyObject[] getArray()
          Get the backing array.
 int hashCode()
           
 int indexOf(Object o)
           
 boolean isEmpty()
           
 Iterator iterator()
           
 int lastIndexOf(Object o)
           
 ListIterator listIterator()
           
 ListIterator listIterator(int index)
           
 void pyadd(int index, PyObject element)
           
 boolean pyadd(PyObject o)
           
 PyObject pyget(int index)
           
 void pyset(int index, PyObject value)
          Sets the given element of the sequence.
 Object remove(int index)
           
 void remove(int start, int stop)
           
 boolean remove(Object o)
           
 boolean removeAll(Collection coll)
           
 boolean retainAll(Collection coll)
           
 Object set(int index, Object element)
           
 int size()
           
 List subList(int fromIndex, int toIndex)
           
 Object[] toArray()
           
 Object[] toArray(Object[] converted)
           
 String toString()
           
 PyObject tuple___iter__()
           
 
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__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __float__, __floordiv__, __get__, __getattr__, __getattr__, __getitem__, __getslice__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iternext__, __itruediv__, __ixor__, __long__, __lshift__, __mod__, __neg__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __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__, __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, delDict, delType, dispatch__init__, fastGetClass, fastGetDict, getDict, getType, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, noAttributeError, readonlyAttributeError, setDict, setType
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE

public static final PyType TYPE
Constructor Detail

PyTuple

public PyTuple()

PyTuple

public PyTuple(PyObject... elements)

PyTuple

public PyTuple(PyType subtype,
               PyObject[] elements)

PyTuple

public PyTuple(PyObject[] elements,
               boolean copy)

PyTuple

public PyTuple(PyType subtype,
               PyObject[] elements,
               boolean copy)
Method Detail

fromIterable

public static PyTuple fromIterable(PyObject iterable)
Return a new PyTuple from an iterable. Raises a TypeError if the object is not iterable.

Parameters:
iterable - an iterable PyObject
Returns:
a PyTuple containing each item in the iterable

__len__

public int __len__()
Description copied from class: PyObject
Equivalent to the standard Python __len__ method. Part of the mapping discipline.

Overrides:
__len__ in class PyObject
Returns:
the length of the object

__add__

public PyObject __add__(PyObject generic_other)
Description copied from class: PyObject
Equivalent to the standard Python __add__ method

Overrides:
__add__ in class PyObject
Parameters:
generic_other - the object to perform this binary operation with (the right-hand operand).
Returns:
the result of the add, or null if this operation is not defined

__mul__

public PyObject __mul__(PyObject o)
Description copied from class: PyObject
Equivalent to the standard Python __mul__ method

Overrides:
__mul__ in class PyObject
Parameters:
o - the object to perform this binary operation with (the right-hand operand).
Returns:
the result of the mul, or null if this operation is not defined

__rmul__

public PyObject __rmul__(PyObject o)
Description copied from class: PyObject
Equivalent to the standard Python __rmul__ method

Overrides:
__rmul__ in class PyObject
Parameters:
o - the object to perform this binary operation with (the left-hand operand).
Returns:
the result of the mul, or null if this operation is not defined.

__iter__

public PyObject __iter__()
Description copied from class: PyObject
Return 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 somting with item
 }
 

Overrides:
__iter__ in class PySequence

tuple___iter__

public PyObject tuple___iter__()

__getnewargs__

public PyTuple __getnewargs__()
Overrides:
__getnewargs__ in class PyObject

hashCode

public int hashCode()
Specified by:
hashCode in interface Collection
Specified by:
hashCode in interface List
Specified by:
hashCode in class PySequenceList

toString

public String toString()
Specified by:
toString in class PySequenceList

subList

public List subList(int fromIndex,
                    int toIndex)
Specified by:
subList in interface List
Specified by:
subList in class PySequenceList

iterator

public Iterator iterator()
Specified by:
iterator in interface Iterable
Specified by:
iterator in interface Collection
Specified by:
iterator in interface List
Specified by:
iterator in class PySequenceList

add

public boolean add(Object o)
Specified by:
add in interface Collection
Specified by:
add in interface List
Specified by:
add in class PySequenceList

remove

public boolean remove(Object o)
Specified by:
remove in interface Collection
Specified by:
remove in interface List
Specified by:
remove in class PySequenceList

addAll

public boolean addAll(Collection coll)
Specified by:
addAll in interface Collection
Specified by:
addAll in interface List
Specified by:
addAll in class PySequenceList

removeAll

public boolean removeAll(Collection coll)
Specified by:
removeAll in interface Collection
Specified by:
removeAll in interface List
Specified by:
removeAll in class PySequenceList

retainAll

public boolean retainAll(Collection coll)
Specified by:
retainAll in interface Collection
Specified by:
retainAll in interface List
Specified by:
retainAll in class PySequenceList

clear

public void clear()
Specified by:
clear in interface Collection
Specified by:
clear in interface List
Specified by:
clear in class PySequenceList

set

public Object set(int index,
                  Object element)
Specified by:
set in interface List
Specified by:
set in class PySequenceList

add

public void add(int index,
                Object element)
Specified by:
add in interface List
Specified by:
add in class PySequenceList

remove

public Object remove(int index)
Specified by:
remove in interface List
Specified by:
remove in class PySequenceList

addAll

public boolean addAll(int index,
                      Collection c)
Specified by:
addAll in interface List
Specified by:
addAll in class PySequenceList

listIterator

public ListIterator listIterator()
Specified by:
listIterator in interface List
Specified by:
listIterator in class PySequenceList

listIterator

public ListIterator listIterator(int index)
Specified by:
listIterator in interface List
Specified by:
listIterator in class PySequenceList

pyset

public void pyset(int index,
                  PyObject value)
Description copied from class: PySequence
Sets the given element of the sequence.

Specified by:
pyset in class PySequenceList
Parameters:
index - index of the element to set.
value - the value to set this element to.

contains

public boolean contains(Object o)
Specified by:
contains in interface Collection
Specified by:
contains in interface List
Specified by:
contains in class PySequenceList

containsAll

public boolean containsAll(Collection c)
Specified by:
containsAll in interface Collection
Specified by:
containsAll in interface List
Specified by:
containsAll in class PySequenceList

equals

public boolean equals(Object other)
Description copied from class: PyObject
Should almost never be overridden. If overridden, it is the subclasses responsibility to ensure that a.equals(b) == true iff cmp(a,b) == 0

Specified by:
equals in interface Collection
Specified by:
equals in interface List
Specified by:
equals in class PySequenceList

get

public Object get(int index)
Specified by:
get in interface List
Specified by:
get in class PySequenceList

getArray

public PyObject[] getArray()
Description copied from class: PySequenceList
Get the backing array. The array should not be modified. To get a copy of the array, see PySequenceList.toArray().

Specified by:
getArray in class PySequenceList

indexOf

public int indexOf(Object o)
Specified by:
indexOf in interface List
Specified by:
indexOf in class PySequenceList

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Collection
Specified by:
isEmpty in interface List
Specified by:
isEmpty in class PySequenceList

lastIndexOf

public int lastIndexOf(Object o)
Specified by:
lastIndexOf in interface List
Specified by:
lastIndexOf in class PySequenceList

pyadd

public void pyadd(int index,
                  PyObject element)
Specified by:
pyadd in class PySequenceList

pyadd

public boolean pyadd(PyObject o)
Specified by:
pyadd in class PySequenceList

pyget

public PyObject pyget(int index)
Specified by:
pyget in class PySequenceList
Parameters:
index - index of element to return.
Returns:
the element at the given position in the list.

remove

public void remove(int start,
                   int stop)
Specified by:
remove in class PySequenceList

size

public int size()
Specified by:
size in interface Collection
Specified by:
size in interface List
Specified by:
size in class PySequenceList

toArray

public Object[] toArray()
Specified by:
toArray in interface Collection
Specified by:
toArray in interface List
Specified by:
toArray in class PySequenceList

toArray

public Object[] toArray(Object[] converted)
Specified by:
toArray in interface Collection
Specified by:
toArray in interface List
Specified by:
toArray in class PySequenceList


Jython homepage