Classes | Public Member Functions | Private Attributes | Static Private Attributes | List of all members
lexy::_detail::buffer_builder< T > Class Template Reference

#include <buffer_builder.hpp>

Classes

class  stable_iterator
 

Public Member Functions

 buffer_builder () noexcept
 
 buffer_builder (const buffer_builder &)=delete
 
std::size_t capacity () const noexcept
 
void clear () noexcept
 
void commit (std::size_t n) noexcept
 
void grow ()
 
buffer_builderoperator= (const buffer_builder &)=delete
 
const T * read_data () const noexcept
 
std::size_t read_size () const noexcept
 
T * write_data () noexcept
 
std::size_t write_size () const noexcept
 
 ~buffer_builder () noexcept
 

Private Attributes

T * _data
 
std::size_t _read_size
 
_stack_buffer [stack_buffer_size]
 
std::size_t _write_size
 

Static Private Attributes

static constexpr auto growth_factor = 2
 
static constexpr std::size_t stack_buffer_size = (total_size_bytes - 3 * sizeof(T*)) / sizeof(T)
 
static constexpr std::size_t total_size_bytes = 1024
 

Detailed Description

template<typename T>
class lexy::_detail::buffer_builder< T >

Definition at line 19 of file buffer_builder.hpp.

Constructor & Destructor Documentation

◆ buffer_builder() [1/2]

template<typename T >
lexy::_detail::buffer_builder< T >::buffer_builder ( )
inlinenoexcept

Definition at line 29 of file buffer_builder.hpp.

◆ ~buffer_builder()

template<typename T >
lexy::_detail::buffer_builder< T >::~buffer_builder ( )
inlinenoexcept

Definition at line 34 of file buffer_builder.hpp.

◆ buffer_builder() [2/2]

template<typename T >
lexy::_detail::buffer_builder< T >::buffer_builder ( const buffer_builder< T > &  )
delete

Member Function Documentation

◆ capacity()

template<typename T >
std::size_t lexy::_detail::buffer_builder< T >::capacity ( ) const
inlinenoexcept

Definition at line 45 of file buffer_builder.hpp.

◆ clear()

template<typename T >
void lexy::_detail::buffer_builder< T >::clear ( )
inlinenoexcept

Definition at line 71 of file buffer_builder.hpp.

◆ commit()

template<typename T >
void lexy::_detail::buffer_builder< T >::commit ( std::size_t  n)
inlinenoexcept

Definition at line 78 of file buffer_builder.hpp.

◆ grow()

template<typename T >
void lexy::_detail::buffer_builder< T >::grow ( )
inline

Definition at line 86 of file buffer_builder.hpp.

◆ operator=()

template<typename T >
buffer_builder& lexy::_detail::buffer_builder< T >::operator= ( const buffer_builder< T > &  )
delete

◆ read_data()

template<typename T >
const T* lexy::_detail::buffer_builder< T >::read_data ( ) const
inlinenoexcept

Definition at line 51 of file buffer_builder.hpp.

◆ read_size()

template<typename T >
std::size_t lexy::_detail::buffer_builder< T >::read_size ( ) const
inlinenoexcept

Definition at line 55 of file buffer_builder.hpp.

◆ write_data()

template<typename T >
T* lexy::_detail::buffer_builder< T >::write_data ( )
inlinenoexcept

Definition at line 61 of file buffer_builder.hpp.

◆ write_size()

template<typename T >
std::size_t lexy::_detail::buffer_builder< T >::write_size ( ) const
inlinenoexcept

Definition at line 65 of file buffer_builder.hpp.

Member Data Documentation

◆ _data

template<typename T >
T* lexy::_detail::buffer_builder< T >::_data
private

Definition at line 152 of file buffer_builder.hpp.

◆ _read_size

template<typename T >
std::size_t lexy::_detail::buffer_builder< T >::_read_size
private

Definition at line 153 of file buffer_builder.hpp.

◆ _stack_buffer

template<typename T >
T lexy::_detail::buffer_builder< T >::_stack_buffer[stack_buffer_size]
private

Definition at line 155 of file buffer_builder.hpp.

◆ _write_size

template<typename T >
std::size_t lexy::_detail::buffer_builder< T >::_write_size
private

Definition at line 154 of file buffer_builder.hpp.

◆ growth_factor

template<typename T >
constexpr auto lexy::_detail::buffer_builder< T >::growth_factor = 2
staticconstexprprivate

Definition at line 26 of file buffer_builder.hpp.

◆ stack_buffer_size

template<typename T >
constexpr std::size_t lexy::_detail::buffer_builder< T >::stack_buffer_size = (total_size_bytes - 3 * sizeof(T*)) / sizeof(T)
staticconstexprprivate

Definition at line 25 of file buffer_builder.hpp.

◆ total_size_bytes

template<typename T >
constexpr std::size_t lexy::_detail::buffer_builder< T >::total_size_bytes = 1024
staticconstexprprivate

Definition at line 23 of file buffer_builder.hpp.


The documentation for this class was generated from the following file:


behaviortree_cpp_v4
Author(s): Davide Faconti
autogenerated on Fri Jun 28 2024 02:20:10