Elements, Array and Lists With Clone Protocol, demonstration classes#

This module demonstrate the usage of the various classes defined in list_clone

class sage.structure.list_clone_demo.IncreasingArray#

Bases: ClonableArray

A small extension class for testing ClonableArray.

check()#

Check that self is increasing.

EXAMPLES:

sage: from sage.structure.list_clone_demo import IncreasingArrays
sage: IncreasingArrays()([1,2,3]) # indirect doctest
[1, 2, 3]
sage: IncreasingArrays()([3,2,1]) # indirect doctest
Traceback (most recent call last):
...
ValueError: array is not increasing
class sage.structure.list_clone_demo.IncreasingArrays#

Bases: UniqueRepresentation, Parent

A small (incomplete) parent for testing ClonableArray

Element#

alias of IncreasingArray

class sage.structure.list_clone_demo.IncreasingIntArray#

Bases: ClonableIntArray

A small extension class for testing ClonableIntArray.

check()#

Check that self is increasing.

EXAMPLES:

sage: from sage.structure.list_clone_demo import IncreasingIntArrays
sage: IncreasingIntArrays()([1,2,3]) # indirect doctest
[1, 2, 3]
sage: IncreasingIntArrays()([3,2,1]) # indirect doctest
Traceback (most recent call last):
...
ValueError: array is not increasing
class sage.structure.list_clone_demo.IncreasingIntArrays#

Bases: IncreasingArrays

A small (incomplete) parent for testing ClonableIntArray

Element#

alias of IncreasingIntArray

class sage.structure.list_clone_demo.IncreasingList#

Bases: ClonableList

A small extension class for testing ClonableList

check()#

Check that self is increasing

EXAMPLES:

sage: from sage.structure.list_clone_demo import IncreasingLists
sage: IncreasingLists()([1,2,3]) # indirect doctest
[1, 2, 3]
sage: IncreasingLists()([3,2,1]) # indirect doctest
Traceback (most recent call last):
...
ValueError: array is not increasing
class sage.structure.list_clone_demo.IncreasingLists#

Bases: IncreasingArrays

A small (incomplete) parent for testing ClonableList

Element#

alias of IncreasingList

class sage.structure.list_clone_demo.SortedList#

Bases: NormalizedClonableList

A small extension class for testing NormalizedClonableList.

check()#

Check that self is strictly increasing

EXAMPLES:

sage: from sage.structure.list_clone_demo import SortedList, SortedLists
sage: SortedLists()([1,2,3]) # indirect doctest
[1, 2, 3]
sage: SortedLists()([3,2,2]) # indirect doctest
Traceback (most recent call last):
...
ValueError: list is not strictly increasing
normalize()#

Normalize self

Sort the list stored in self.

EXAMPLES:

sage: from sage.structure.list_clone_demo import SortedList, SortedLists
sage: l = SortedList(SortedLists(), [3,1,2], False, False)
sage: l         # indirect doctest
[1, 2, 3]
sage: l[1] = 5; l
[1, 5, 3]
sage: l.normalize(); l
[1, 3, 5]
class sage.structure.list_clone_demo.SortedLists#

Bases: IncreasingLists

A small (incomplete) parent for testing NormalizedClonableList

Element#

alias of SortedList