question: adds an object to the end of the list and returns the entry created for said object . the entry can later be reused for moving the entry . concode_field_sep T replaced concode_elem_sep Entry previous concode_elem_sep boolean valid concode_elem_sep Entry last concode_elem_sep int size concode_elem_sep int maxSize concode_elem_sep Entry next concode_elem_sep Entry first concode_elem_sep T content concode_field_sep Entry getPrevious concode_elem_sep void setValid concode_elem_sep void clearReplaced concode_elem_sep void moveLast concode_elem_sep T getContent concode_elem_sep Entry getNext concode_elem_sep boolean getValid concode_elem_sep Entry push concode_elem_sep void remove concode_elem_sep T pop concode_elem_sep int getSize concode_elem_sep void moveFirst concode_elem_sep T getReplaced concode_elem_sep void setNext concode_elem_sep T unpush concode_elem_sep String toString concode_elem_sep void setReplaced concode_elem_sep void setPrevious
target: Entry function ( final T arg0 ) { Entry loc0 = new Entry ( arg0 ) ; if ( size >= maxSize ) { loc0 . setReplaced ( unpush ( ) ) ; } if ( first == null ) { first = last = loc0 ; } else { last . setNext ( loc0 ) ; loc0 . setPrevious ( last ) ; last = loc0 ; } size ++ ; return loc0 ; }