7#define __XTD_CORE_INTERNAL__
9#undef __XTD_CORE_INTERNAL__
44 template<
class type_t>
45 class icollection :
public xtd::collections::generic::ienumerable<type_t>,
public xtd::collections::generic::extensions::collection_common<type_t, icollection<type_t >> {
59 virtual auto count() const noexcept -> xtd::
size = 0;
64 virtual auto is_read_only() const noexcept ->
bool = 0;
80 virtual auto is_synchronized() const noexcept ->
bool = 0;
103 virtual auto sync_root() const noexcept -> const xtd::
object& = 0;
112 virtual auto
add(const type_t& item) ->
void = 0;
117 virtual auto
clear() ->
void = 0;
123 virtual auto contains(const type_t& item) const noexcept ->
bool = 0;
129 virtual auto
copy_to(xtd::array<type_t>& array, xtd::
size array_index) const ->
void = 0;
137 virtual auto
remove(const type_t& item) ->
bool = 0;
Contains xtd::array definitions.
xtd::any_object value_type
Definition ienumerable.hpp:46
Contains xtd::collections::generic::extensions::collection_common class.
Contains xtd::collections::generic::ienumerable <type_t> interface.
size_t size
Represents a size of any object in bytes.
Definition size.hpp:23
@ clear
The CLEAR key.
Definition console_key.hpp:26
@ add
The Add key.
Definition console_key.hpp:170
The xtd::collections::generic namespace contains interfaces and classes that define generic collectio...
Definition comparer.hpp:16
virtual auto remove(const type_t &item) -> bool=0
The xtd::collections namespace contains interfaces and classes that define various collections of obj...
Definition any_pair.hpp:10
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
void copy_to(span< type_t, length > &destination) const
Copies the contents of this xtd::read_only_span <type_t> into a destination xtd:span <type_t>.
Definition read_only_span.hpp:264
Contains xtd::object class.