base/common/src/main/com/thesett/common/util/SizeableLinkedList.java
public boolean add(T o)
    {
        boolean result = super.add(o);

        sizeOf += (result) ? o.sizeof() : 0;

        return result;
    }
public boolean add(T o)
    {
        boolean result = super.add(o);

        sizeOf += (result) ? o.sizeof() : 0;

        return result;
    }
public boolean add ( T o ) { boolean result = super . add ( o ) ; sizeOf += ( result ) ? o . sizeof ( ) : 0 ; return result ; }
Appends the specified element to the end of this list (optional operation).

<p/>Lists that support this operation may place limitations on what elements may be added to this list. In
particular, some lists will refuse to add null elements, and others will impose restrictions on the type of
elements that may be added. List classes should clearly specify in their documentation any restrictions on what
elements may be added.

@param  o element to be appended to this list.

@return <tt>true</tt> (as per the general contract of the <tt>Collection.add</tt> method).

@throws UnsupportedOperationException if the <tt>add</tt> method is not supported by this list.
@throws ClassCastException            if the class of the specified element prevents it from being added to this
list.
@throws NullPointerException          if the specified element is null and this list does not support null
elements.
@throws IllegalArgumentException      if some aspect of this element prevents it from being added to this list.
Appends the specified element to the end of this list ( optional operation ) .