MySQL 9.3.0
Source Code Documentation
shcore::polyglot::Collectable< T, t > Class Template Reference

Represents a data object to be associated to a Polyglot wrapper for C++ elements. More...

#include <polyglot_collectable.h>

Inheritance diagram for shcore::polyglot::Collectable< T, t >:
[legend]

Public Member Functions

 Collectable (const std::shared_ptr< T > &d, std::weak_ptr< Polyglot_language > language)
 
 Collectable (const Collectable &)=delete
 
 Collectable (Collectable &&)=delete
 
Collectableoperator= (const Collectable &)=delete
 
Collectableoperator= (Collectable &&)=delete
 
 ~Collectable () override=default
 
const std::shared_ptr< T > & data () const
 
- Public Member Functions inherited from shcore::polyglot::ICollectable
 ICollectable (Collectable_type type, std::weak_ptr< Polyglot_language > language)
 
virtual ~ICollectable ()=default
 
Collectable_type type () const
 
std::shared_ptr< Polyglot_languagelanguage () const
 
Collectable_registryregistry () const
 

Private Attributes

std::shared_ptr< Tm_data
 

Detailed Description

template<typename T, Collectable_type t>
class shcore::polyglot::Collectable< T, t >

Represents a data object to be associated to a Polyglot wrapper for C++ elements.

It contains the necessary to:

  • Identify the target object type
  • Identify the target object itself
  • Context information to perform Polyglot related operations

Constructor & Destructor Documentation

◆ Collectable() [1/3]

template<typename T , Collectable_type t>
shcore::polyglot::Collectable< T, t >::Collectable ( const std::shared_ptr< T > &  d,
std::weak_ptr< Polyglot_language language 
)
inline

◆ Collectable() [2/3]

template<typename T , Collectable_type t>
shcore::polyglot::Collectable< T, t >::Collectable ( const Collectable< T, t > &  )
delete

◆ Collectable() [3/3]

template<typename T , Collectable_type t>
shcore::polyglot::Collectable< T, t >::Collectable ( Collectable< T, t > &&  )
delete

◆ ~Collectable()

template<typename T , Collectable_type t>
shcore::polyglot::Collectable< T, t >::~Collectable ( )
overridedefault

Member Function Documentation

◆ data()

template<typename T , Collectable_type t>
const std::shared_ptr< T > & shcore::polyglot::Collectable< T, t >::data ( ) const
inline

◆ operator=() [1/2]

template<typename T , Collectable_type t>
Collectable & shcore::polyglot::Collectable< T, t >::operator= ( Collectable< T, t > &&  )
delete

◆ operator=() [2/2]

template<typename T , Collectable_type t>
Collectable & shcore::polyglot::Collectable< T, t >::operator= ( const Collectable< T, t > &  )
delete

Member Data Documentation

◆ m_data

template<typename T , Collectable_type t>
std::shared_ptr<T> shcore::polyglot::Collectable< T, t >::m_data
private

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