27      template<
typename type_t, 
typename sorter_t = sorter_none>
 
   37          template <
typename ...args_t>
 
   38          value_type(args_t&& ...args) : type_t(args...) {}
 
   40            if (value.owner) owner = value.owner;
 
   41            if (owner != 
nullptr && !owner->inserting_ && !owner->erasing_) owner->
item_updated(pos, 
static_cast<type_t&
>(
const_cast<value_type&
>(value)));
 
   42            type_t::operator=(value);
 
   46            if (value.owner) owner = value.owner;
 
   47            if (owner != 
nullptr && !owner->inserting_ && !owner->erasing_) owner->
item_updated(pos, 
static_cast<type_t&
>(value));
 
   48            type_t::operator=(value);
 
   51          operator type_t() {
return *
this;}
 
   52          friend std::ostream& operator<<(std::ostream& os, 
const value_type& value) {
return os << static_cast<const type_t&>(value);}
 
   57          size_t pos = std::numeric_limits<size_t>::max();
 
   72        using pointer = 
typename std::allocator_traits<allocator_type>::pointer;
 
   74        using const_pointer = 
typename std::allocator_traits<allocator_type>::const_pointer;
 
   76        using iterator = 
typename std::vector<value_type>::iterator;
 
   97          for (
auto item : collection)
 
  100        arranged_element_collection(
const arranged_element_collection& collection) {
push_back_range(collection);}
 
  101        arranged_element_collection& operator=(
const arranged_element_collection& collection) {
 
  106        arranged_element_collection(arranged_element_collection&&) = 
default;
 
  107        bool operator==(
const arranged_element_collection& value)
 const {
return collection_ == value.collection_;}
 
  108        bool operator!=(
const arranged_element_collection& value)
 const {
return !operator==(value);}
 
  128          collection_[pos].pos = pos;
 
  129          collection_[pos].owner = 
this;
 
  130          return collection_.at(pos);
 
  161          collection_[pos].pos = pos;
 
  162          collection_[pos].owner = 
this;
 
  163          return collection_[pos];
 
  211        bool empty()
 const {
return collection_.empty();}
 
  237          if (sorted_ != value) {
 
  254          size_t index = pos - 
begin();
 
  256          iterator result = collection_.insert(pos, value);
 
  258          (*this)[index].owner = 
this;
 
  259          (*this)[index].pos = index;
 
  268          size_t index = pos - 
begin();
 
  270          iterator result = collection_.insert(pos, value);
 
  272          (*this)[index].owner = 
this;
 
  273          (*this)[index].pos = index;
 
  282          size_t index = pos - 
begin();
 
  284          iterator result = collection_.insert(pos, value);
 
  286          (*this)[index].owner = 
this;
 
  287          (*this)[index].pos = index;
 
  306          iterator result = collection_.erase(pos);
 
  315          iterator result = collection_.erase(pos);
 
  325          for (
iterator it = first; it <= last; it++)
 
  349          collection_.push_back(item);
 
  350          size_t index = collection_.size() - 1;
 
  351          (*this)[index].owner = 
this;
 
  352          (*this)[index].pos = index;
 
  359          collection_.push_back(item);
 
  360          size_t index = collection_.size() - 1;
 
  361          (*this)[index].owner = 
this;
 
  362          (*this)[index].pos = index;
 
  387        template<
typename collection_t>
 
  389          for(
const auto& item : collection)
 
  402          std::vector<type_t> array;
 
  403          for (
auto item : collection_)
 
  404            array.push_back(item);
 
  416        std::vector<value_type, allocator_type> collection_;
 
  417        bool inserting_ = 
false;
 
  418        bool erasing_ = 
false;
 
  419        bool sorted_ = 
false;
 
Contains xtd::argument_out_of_range_exception exception.
 
The exception that is thrown when one of the arguments provided to a method is out of range.
Definition: argument_out_of_range_exception.h:18
 
Contains xtd::event event.
 
Contains xtd::event_args event args.
 
Contains xtd::event_handler event handler.
 
#define current_stack_frame_
Provides information about the current stack frame.
Definition: stack_frame.h:201
 
size_t size
Represents a size of any object in bytes.
Definition: types.h:171
 
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition: system_report.h:17
 
Contains xtd::forms::layout::sorter_none class.