diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-12-24 11:41:44 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-12-24 11:41:44 +0100 |
| commit | 5d69778988ed44f62edbaaa4f95cf8dcdb0e8b45 (patch) | |
| tree | 2fd80dda4917dc02920895e500c10577fad3bbcd /include | |
| parent | 91af7e1b9b4427a3b1affd6eb100b4e5e10c9897 (diff) | |
feat! final API design for basic_rope.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/ocl/tproc/detail/rope_fwd.hpp | 19 | ||||
| -rw-r--r-- | include/ocl/tproc/detail/rope_fwd.inl | 20 |
2 files changed, 27 insertions, 12 deletions
diff --git a/include/ocl/tproc/detail/rope_fwd.hpp b/include/ocl/tproc/detail/rope_fwd.hpp index f46d0f4..c9c3567 100644 --- a/include/ocl/tproc/detail/rope_fwd.hpp +++ b/include/ocl/tproc/detail/rope_fwd.hpp @@ -6,8 +6,8 @@ #ifndef OCL_TPROC_ROPE_FWD_HPP #define OCL_TPROC_ROPE_FWD_HPP -#include <memory> #include <boost/utility/string_view.hpp> +#include <memory> /// \file rope_fwd.hpp /// \brief Basic forward definitions of the `rope` type. @@ -31,23 +31,16 @@ public: using const_pointer = std::allocator_traits<Allocator>::pointer; CharT *begin(); - CharT *end(); - size_type size(); - bool empty() const; - ~basic_rope() = default; - basic_rope(const boost::string_view& in = {}); + ~basic_rope(); + basic_rope(const boost::basic_string_view<CharT> &in = {}); private: - struct impl; - std::unique_ptr<impl> impl_; - -#if !defined(OCL_ROPE_IMPL) - struct impl {}; -#endif + struct tree_impl; + std::unique_ptr<tree_impl> impl_; }; #if __cplusplus >= 201811L @@ -59,4 +52,6 @@ using wrope = basic_rope<wchar_t>; } // namespace ocl +#include "rope_fwd.inl" + #endif diff --git a/include/ocl/tproc/detail/rope_fwd.inl b/include/ocl/tproc/detail/rope_fwd.inl new file mode 100644 index 0000000..5ca6bf4 --- /dev/null +++ b/include/ocl/tproc/detail/rope_fwd.inl @@ -0,0 +1,20 @@ +// Copyright 2025, Amlal El Mahrouss (amlal@nekernel.org) +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// Official repository: https://github.com/ocl-org/tproc + +#ifndef OCL_TPROC_ROPE_FWD_INL +#define OCL_TPROC_ROPE_FWD_INL + +namespace ocl { + +template <class CharT> struct basic_rope<CharT>::tree_impl {}; + +template <class CharT> basic_rope<CharT>::~basic_rope() = default; + +template <class CharT> +basic_rope<CharT>::basic_rope(const boost::basic_string_view<CharT> &in) {} + +} // namespace ocl + +#endif
\ No newline at end of file |
