MySQL 9.3.0
Source Code Documentation
shcore::polyglot::Store Class Referencefinal

Helper class to handle polyglot values made permanent. More...

#include <polyglot_store.h>

Public Member Functions

 Store ()=default
 
 Store (poly_thread thread) noexcept
 
 Store (poly_thread thread, poly_handle object)
 
 Store (const Store &other)=delete
 
Storeoperator= (const Store &other)=delete
 
 Store (Store &&other) noexcept
 
Storeoperator= (Store &&other) noexcept
 
 ~Store () noexcept
 
Storereset (bool throw_on_error=true)
 
Storeoperator= (std::nullptr_t)
 
 operator bool () const
 
poly_reference get () const noexcept
 
poly_thread thread () const
 

Private Attributes

poly_thread m_thread = nullptr
 
poly_reference m_reference = nullptr
 

Detailed Description

Helper class to handle polyglot values made permanent.

An instance of this class will create a polyglot reference for the given value, making it permanent and available even across contexts.

On destruction the created reference will be removed making the value subject for garbage collection if no additional references are held.

Constructor & Destructor Documentation

◆ Store() [1/5]

shcore::polyglot::Store::Store ( )
default

◆ Store() [2/5]

shcore::polyglot::Store::Store ( poly_thread  thread)
inlineexplicitnoexcept

◆ Store() [3/5]

shcore::polyglot::Store::Store ( poly_thread  thread,
poly_handle  object 
)

◆ Store() [4/5]

shcore::polyglot::Store::Store ( const Store other)
delete

◆ Store() [5/5]

shcore::polyglot::Store::Store ( Store &&  other)
noexcept

◆ ~Store()

shcore::polyglot::Store::~Store ( )
inlinenoexcept

Member Function Documentation

◆ get()

poly_reference shcore::polyglot::Store::get ( ) const
inlinenoexcept

◆ operator bool()

shcore::polyglot::Store::operator bool ( ) const
inlineexplicit

◆ operator=() [1/3]

Store & shcore::polyglot::Store::operator= ( const Store other)
delete

◆ operator=() [2/3]

Store & shcore::polyglot::Store::operator= ( std::nullptr_t  )
inline

◆ operator=() [3/3]

Store & shcore::polyglot::Store::operator= ( Store &&  other)
noexcept

◆ reset()

Store & shcore::polyglot::Store::reset ( bool  throw_on_error = true)

◆ thread()

poly_thread shcore::polyglot::Store::thread ( ) const
inline

Member Data Documentation

◆ m_reference

poly_reference shcore::polyglot::Store::m_reference = nullptr
private

◆ m_thread

poly_thread shcore::polyglot::Store::m_thread = nullptr
private

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