| java.lang.Object gnu.lists.AbstractSequence gnu.lists.LList
All known Subclasses: gnu.lists.Pair,
LList | public class LList extends AbstractSequence implements Sequence,Externalizable(Code) | | Semi-abstract class for traditions Lisp-style lists.
A list is implemented as a chain of Pair objects, where the
'car' field of the Pair points to a data element, and the 'cdr'
field points to the next Pair. (The names 'car' and 'cdr' are
historical; they refer to hardware on machines form the 60's.)
Includes singleton static Empty, and the Pair sub-class.
author: Per Bothner |
Constructor Summary | |
public | LList() |
Method Summary | |
public static Pair | chain1(Pair old, Object arg1) Utility function used by compiler when inlining `list'. | public static Pair | chain4(Pair old, Object arg1, Object arg2, Object arg3, Object arg4) Utility function used by compiler when inlining `list'. | public void | consume(Consumer out) | public boolean | equals(Object obj) | public Object | get(int index) | public Object | getNext(int ipos, Object xpos) | public boolean | gotoNext(PositionContainer posSet, int posNumber) | protected boolean | hasNext(int ipos, Object xpos) | protected boolean | isAfter(int ipos, Object xpos) | public boolean | isEmpty() | final public static int | length(Object arg) | public static Pair | list1(Object arg1) | public static Pair | list2(Object arg1, Object arg2) | public static Pair | list3(Object arg1, Object arg2, Object arg3) | public static Pair | list4(Object arg1, Object arg2, Object arg3, Object arg4) | public static int | listLength(Object obj, boolean allowOtherSequence) A safe function to count the length of a list. | public static Object | listTail(Object list, int count) | public static LList | makeList(Sequence vals) | public static LList | makeList(Object[] vals, int offset, int length) | public static LList | makeList(Object[] vals, int offset) | public void | makePosition(int index, boolean isAfter, PositionContainer poses, int positionNumber) | protected int | nextIndex(int ipos, Object xpos) | public void | readExternal(ObjectInput in) | public Object | readResolve() | public static LList | reverseInPlace(Object list) Reverse a list in place, by modifying the cdr fields. | public int | size() | public void | writeExternal(ObjectOutput out) |
LList | public LList()(Code) | | Do not use - only public for serialization!
|
chain1 | public static Pair chain1(Pair old, Object arg1)(Code) | | Utility function used by compiler when inlining `list'.
|
hasNext | protected boolean hasNext(int ipos, Object xpos)(Code) | | |
isAfter | protected boolean isAfter(int ipos, Object xpos)(Code) | | |
isEmpty | public boolean isEmpty()(Code) | | |
listLength | public static int listLength(Object obj, boolean allowOtherSequence)(Code) | | A safe function to count the length of a list.
Parameters: obj - the putative list to measure Parameters: allowOtherSequence - if a non-List Sequence is seen, allow that the length, or -1 for a circular list, or -2 for an improper list |
makePosition | public void makePosition(int index, boolean isAfter, PositionContainer poses, int positionNumber)(Code) | | |
nextIndex | protected int nextIndex(int ipos, Object xpos)(Code) | | |
reverseInPlace | public static LList reverseInPlace(Object list)(Code) | | Reverse a list in place, by modifying the cdr fields.
|
Methods inherited from gnu.lists.AbstractSequence | protected void add(PositionContainer posSet, int posNumber, Object value)(Code)(Java Doc) public boolean add(Object o)(Code)(Java Doc) public void add(int index, Object o)(Code)(Java Doc) public boolean addAll(Collection c)(Code)(Java Doc) public boolean addAll(int index, Collection c)(Code)(Java Doc) public void clear()(Code)(Java Doc) public int compare(int ipos1, Object xpos1, int ipos2, Object xpos2)(Code)(Java Doc) final public int compare(SeqPosition i1, SeqPosition i2)(Code)(Java Doc) protected void consume(int iposStart, Object xposStart, int iposEnd, Object xposEnd, Consumer out)(Code)(Java Doc) public void consume(Consumer out)(Code)(Java Doc) public boolean consumeNext(int ipos, Object xpos, Consumer out)(Code)(Java Doc) public boolean contains(Object o)(Code)(Java Doc) public boolean containsAll(Collection c)(Code)(Java Doc) public void copyPosition(int ipos, Object xpos, PositionContainer posSet, int posNumber)(Code)(Java Doc) public Enumeration elements()(Code)(Java Doc) public boolean equals(int ipos1, Object xpos1, int ipos2, Object xpos2)(Code)(Java Doc) public boolean equals(Object o)(Code)(Java Doc) public void fill(Object value)(Code)(Java Doc) public void fill(int fromIndex, int toIndex, Object value)(Code)(Java Doc) protected int fromEndIndex(int ipos, Object xpos)(Code)(Java Doc) abstract public Object get(int index)(Code)(Java Doc) public Object get(int[] indexes)(Code)(Java Doc) public Object getAttribute(int index)(Code)(Java Doc) public int getAttributeLength()(Code)(Java Doc) protected int getContainingSequenceSize(int ipos, Object xpos)(Code)(Java Doc) public int getEffectiveIndex(int[] indexes)(Code)(Java Doc) protected int getIndexDifference(int ipos1, Object xpos1, int ipos0, Object xpos0)(Code)(Java Doc) public SeqPosition getIterator()(Code)(Java Doc) protected Object getNext(int ipos, Object xpos)(Code)(Java Doc) public int getNextKind(int ipos, Object xpos)(Code)(Java Doc) public String getNextTypeName(int ipos, Object xpos)(Code)(Java Doc) public Object getNextTypeObject(int ipos, Object xpos)(Code)(Java Doc) protected Object getPrevious(int ipos, Object xpos)(Code)(Java Doc) protected boolean gotoAttributesStart(TreePosition pos)(Code)(Java Doc) public boolean gotoChildrenStart(TreePosition pos)(Code)(Java Doc) public boolean gotoNext(PositionContainer posSet, int posNumber)(Code)(Java Doc) public boolean gotoNext(SeqPosition pos)(Code)(Java Doc) protected boolean gotoParent(TreePosition pos)(Code)(Java Doc) protected boolean gotoPrevious(PositionContainer posSet, int posNumber)(Code)(Java Doc) protected boolean hasNext(int ipos, Object xpos)(Code)(Java Doc) protected boolean hasPrevious(int ipos, Object xpos)(Code)(Java Doc) public int hashCode()(Code)(Java Doc) public int indexOf(Object o)(Code)(Java Doc) protected boolean isAfter(int ipos, Object xpos)(Code)(Java Doc) public boolean isEmpty()(Code)(Java Doc) public Iterator iterator()(Code)(Java Doc) public int lastIndexOf(Object o)(Code)(Java Doc) public ListIterator listIterator()(Code)(Java Doc) public ListIterator listIterator(int index)(Code)(Java Doc) public void makeEndPosition(SeqPosition pos)(Code)(Java Doc) protected void makeEndPosition(PositionContainer poses, int positionNumber)(Code)(Java Doc) final protected void makePosition(int index, SeqPosition pos)(Code)(Java Doc) public void makePosition(int index, boolean isAfter, SeqPosition pos)(Code)(Java Doc) abstract protected void makePosition(int index, boolean isAfter, PositionContainer posSet, int posNumber)(Code)(Java Doc) protected void makeRelativePosition(int istart, Object xstart, int offset, boolean isAfter, PositionContainer posSet, int posNumber)(Code)(Java Doc) public void makeStartPosition(SeqPosition pos)(Code)(Java Doc) protected void makeStartPosition(PositionContainer poses, int positionNumber)(Code)(Java Doc) protected int nextIndex(int ipos, Object xpos)(Code)(Java Doc) final public int nextIndex(SeqPosition pos)(Code)(Java Doc) public int rank()(Code)(Java Doc) protected void releasePosition(int ipos, Object xpos)(Code)(Java Doc) final protected void releasePosition(SeqPosition pos)(Code)(Java Doc) protected void releasePosition(PositionContainer posSet, int posNumber)(Code)(Java Doc) protected void remove(int ipos, Object xpos, int count)(Code)(Java Doc) protected void remove(int ipos0, Object xpos0, int ipos1, Object xpos1)(Code)(Java Doc) public Object remove(int index)(Code)(Java Doc) public boolean remove(Object o)(Code)(Java Doc) public boolean removeAll(Collection c)(Code)(Java Doc) public boolean retainAll(Collection c)(Code)(Java Doc) public Object set(int[] indexes, Object value)(Code)(Java Doc) public Object set(int index, Object element)(Code)(Java Doc) protected void setNext(int ipos, Object xpos, Object value)(Code)(Java Doc) protected void setPrevious(int ipos, Object xpos, Object value)(Code)(Java Doc) abstract public int size()(Code)(Java Doc) public List subList(int fromIx, int toIx)(Code)(Java Doc) public Sequence subSequence(SeqPosition start, SeqPosition end)(Code)(Java Doc) protected Sequence subSequence(int ipos0, Object xpos0, int ipos1, Object xpos1)(Code)(Java Doc) public Object[] toArray()(Code)(Java Doc) public Object[] toArray(Object[] arr)(Code)(Java Doc) protected RuntimeException unsupported(String text)(Code)(Java Doc)
|
|
|