Property definitions

core $ RemovableCollection :: defaultinit
# Items can be removed from this collection
interface RemovableCollection[E]
	super Collection[E]

	# Remove all items
	#
	#     var a = [1,2,3]
	#     a.clear
	#     assert a.length == 0
	#
	# ENSURE `is_empty`
	fun clear is abstract

	# Remove an occurrence of `item`
	#
	#     var a = [1,2,3,1,2,3]
	#     a.remove 2
	#     assert a == [1,3,1,2,3]
	fun remove(item: nullable Object) is abstract

	# Remove all occurrences of `item`
	#
	#     var a = [1,2,3,1,2,3]
	#     a.remove_all 2
	#     assert a == [1,3,1,3]
	fun remove_all(item: nullable Object) do while has(item) do remove(item)
end
lib/core/collection/abstract_collection.nit:395,1--421,3