C++ interface

This commit is contained in:
Sylvain PILLOT 2022-03-01 15:51:48 +01:00
parent 81adf1d494
commit a35c96f38e
1 changed files with 12 additions and 4 deletions

View File

@ -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]); }