Mercurial > octave
changeset 33263:a7d829ba6d44
Export Array<T>::ArrayRep from shared library.
* Array.h (Array<T>::ArrayRep): Add visibility attributed to template class
definition and overridable member functions.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Thu, 28 Mar 2024 15:46:11 +0100 |
parents | ab68bff7b8b8 |
children | 421c45e180ce |
files | liboctave/array/Array.h |
diffstat | 1 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/liboctave/array/Array.h Thu Mar 28 00:32:26 2024 -0400 +++ b/liboctave/array/Array.h Thu Mar 28 15:46:11 2024 +0100 @@ -131,7 +131,7 @@ protected: //! The real representation of all arrays. - class ArrayRep : public Alloc + class OCTARRAY_TEMPLATE_API ArrayRep : public Alloc { public: @@ -144,6 +144,7 @@ octave_idx_type m_len; octave::refcount<octave_idx_type> m_count; + OCTARRAY_OVERRIDABLE_FUNC_API ArrayRep (pointer d, octave_idx_type len) : Alloc (), m_data (allocate (len)), m_len (len), m_count (1) { @@ -187,13 +188,16 @@ ~ArrayRep () { deallocate (m_data, m_len); } - octave_idx_type numel () const { return m_len; } + OCTARRAY_OVERRIDABLE_FUNC_API octave_idx_type numel () const + { + return m_len; + } // No assignment! ArrayRep& operator = (const ArrayRep&) = delete; - pointer allocate (size_t len) + OCTARRAY_OVERRIDABLE_FUNC_API pointer allocate (size_t len) { pointer data = Alloc_traits::allocate (*this, len); for (size_t i = 0; i < len; i++) @@ -201,7 +205,7 @@ return data; } - void deallocate (pointer data, size_t len) + OCTARRAY_OVERRIDABLE_FUNC_API void deallocate (pointer data, size_t len) { for (size_t i = 0; i < len; i++) T_Alloc_traits::destroy (*this, data+i);