001 package listFW; 002 003 /** 004 * Represents the structural behavior of an immutable non-empty list 005 * that holds elements of type E. 006 * An immutable non-empty list has a data object called first, and an 007 * isomorphic subcomponent called rest. Its structural behavior 008 * provides access to its internal data (first) and substructure (rest). 009 * @author Dung X. Nguyen 010 * @author Stephen B. Wong 011 * @author Mathias Ricken - Copyright 2008 - All rights reserved. 012 * @since Copyright 2004 - DXN, SBW All rights reserved 013 */ 014 public interface INEList<E> extends IList<E> { 015 /** 016 * "Gettor" method for the list's first. 017 * @return this INElist's first element. 018 */ 019 public abstract E getFirst(); 020 021 /** 022 * "Gettor" method for the list's rest. 023 * @return this INElist's rest. 024 */ 025 public abstract IList<? extends E> getRest(); 026 } 027