class interface DS_LINKABLE[G] creation make (v: G) -- Insert v in cell. ensure inserted: item = v feature(s) from DS_CELL -- Access item: G -- Content of cell feature(s) from DS_CELL -- Element change put (v: G) -- Insert v in cell. ensure inserted: item = v feature(s) from DS_CELL -- Element change make (v: G) -- Insert v in cell. ensure inserted: item = v feature(s) from DS_LINKABLE -- Access right: like Current -- Right neighbor feature(s) from DS_LINKABLE -- Element change put_right (other: like Current) -- Put other to right of cell. require other_not_void: other /= Void ensure linked: right = other forget_right -- Remove right neighbor. ensure forgotten: right = Void end of DS_LINKABLE[G]