diff --git a/include/uarray.h b/include/uarray.h index b5e4d0f..9736942 100644 --- a/include/uarray.h +++ b/include/uarray.h @@ -44,12 +44,20 @@ public: inline const_iterator end (void) const { return (begin() + N); } inline size_type size (void) const { return (N); } inline size_type max_size (void) const { return (N); } - inline bool empty (void) const { return (N == 0); } + inline bool empty (void) const { return (N == 0); } inline const_reference at (size_type i) const { return (_v[i]); } inline reference at (size_type i) { return (_v[i]); } - inline void read (istream& is) { nr_container_read (is, *this); } - inline void write (ostream& os) const { nr_container_write (os, *this); } - inline void text_write (ostringstream& os) const { container_text_write (os, *this); } + +// addition by SlyVTT + inline const_reference front (void) const { return (_v[0]); } + inline reference front (void) { return (_v[0]); } + inline const_reference back (void) const { return (_v[N-1]); } + inline reference back (void) { return (_v[N-1]); } +//end of addition by SlyVTT + + inline void read (istream& is) { nr_container_read (is, *this); } + inline void write (ostream& os) const { nr_container_write (os, *this); } + inline void text_write (ostringstream& os) const { container_text_write (os, *this); } inline size_t stream_size (void) const { return (nr_container_stream_size (*this)); } inline const_reference operator[] (size_type i) const { return (_v[i]); } inline reference operator[] (size_type i) { return (_v[i]); }