sources/list.h

changeset 51
481073b016a9
parent 11
cffa2777d917
child 69
eb4c25284a19
equal deleted inserted replaced
50:874bbfa55da8 51:481073b016a9
66 auto end() const -> ConstIterator; 66 auto end() const -> ConstIterator;
67 auto find (const T& needle) -> Iterator; 67 auto find (const T& needle) -> Iterator;
68 auto find (const T& needle) const -> ConstIterator; 68 auto find (const T& needle) const -> ConstIterator;
69 auto find (Function<bool (T const&)> func) -> Iterator; 69 auto find (Function<bool (T const&)> func) -> Iterator;
70 auto find (Function<bool (T const&)> func) const -> ConstIterator; 70 auto find (Function<bool (T const&)> func) const -> ConstIterator;
71 auto first() -> T&;
71 auto first() const -> const T&; 72 auto first() const -> const T&;
72 auto insert (int pos, const T& value) -> void; 73 auto insert (int pos, const T& value) -> void;
73 auto is_empty() const -> bool; 74 auto is_empty() const -> bool;
75 auto last() -> T&;
74 auto last() const -> const T&; 76 auto last() const -> const T&;
75 auto merge (const Self& other) -> void; 77 auto merge (const Self& other) -> void;
76 auto pop (T& val) -> bool; 78 auto pop (T& val) -> bool;
77 auto prepend (const T& value) -> T&; 79 auto prepend (const T& value) -> T&;
78 auto rbegin() -> ReverseIterator; 80 auto rbegin() -> ReverseIterator;
482 } 484 }
483 485
484 // ------------------------------------------------------------------------------------------------- 486 // -------------------------------------------------------------------------------------------------
485 // 487 //
486 template<typename T, typename C> 488 template<typename T, typename C>
489 auto Container<T, C>::first() -> T&
490 {
491 return *m_container.begin();
492 }
493
494 // -------------------------------------------------------------------------------------------------
495 //
496 template<typename T, typename C>
487 auto Container<T, C>::first() const -> const T& 497 auto Container<T, C>::first() const -> const T&
488 { 498 {
489 return *m_container.cbegin(); 499 return *m_container.cbegin();
500 }
501
502 // -------------------------------------------------------------------------------------------------
503 //
504 template<typename T, typename C>
505 auto Container<T, C>::last() -> T&
506 {
507 return *(m_container.end() - 1);
490 } 508 }
491 509
492 // ------------------------------------------------------------------------------------------------- 510 // -------------------------------------------------------------------------------------------------
493 // 511 //
494 template<typename T, typename C> 512 template<typename T, typename C>

mercurial