Scorum
Public Types | Public Member Functions | List of all members
scorum::chain::base_service_i< T > Struct Template Referenceabstract

#include <service_base.hpp>

Inheritance diagram for scorum::chain::base_service_i< T >:
scorum::chain::comment_statistic_base_service_i< comment_statistic_scr_object > scorum::chain::comment_statistic_base_service_i< comment_statistic_sp_object > scorum::chain::comment_statistic_base_service_i< T > scorum::chain::comment_statistic_scr_service_i scorum::chain::comment_statistic_sp_service_i

Public Types

using object_type = T
 
using modifier_type = std::function< void(object_type &)>
 
using call_type = std::function< void(const object_type &)>
 
using object_cref_type = std::reference_wrapper< const object_type >
 

Public Member Functions

virtual ~base_service_i ()
 
virtual const object_typecreate (const modifier_type &modifier)=0
 
virtual void update (const modifier_type &modifier)=0
 
virtual void update (const object_type &o, const modifier_type &modifier)=0
 
virtual void remove ()=0
 
virtual void remove (const object_type &o)=0
 
virtual void remove_all (const std::vector< object_cref_type > &os)=0
 
virtual bool is_exists () const =0
 
virtual const object_typeget () const =0
 

Detailed Description

template<class T>
struct scorum::chain::base_service_i< T >

Definition at line 13 of file service_base.hpp.

Member Typedef Documentation

◆ call_type

template<class T >
using scorum::chain::base_service_i< T >::call_type = std::function<void(const object_type&)>

Definition at line 17 of file service_base.hpp.

◆ modifier_type

template<class T >
using scorum::chain::base_service_i< T >::modifier_type = std::function<void(object_type&)>

Definition at line 16 of file service_base.hpp.

◆ object_cref_type

template<class T >
using scorum::chain::base_service_i< T >::object_cref_type = std::reference_wrapper<const object_type>

Definition at line 18 of file service_base.hpp.

◆ object_type

template<class T >
using scorum::chain::base_service_i< T >::object_type = T

Definition at line 15 of file service_base.hpp.

Constructor & Destructor Documentation

◆ ~base_service_i()

template<class T >
virtual scorum::chain::base_service_i< T >::~base_service_i ( )
inlinevirtual

Definition at line 20 of file service_base.hpp.

Member Function Documentation

◆ create()

template<class T >
virtual const object_type& scorum::chain::base_service_i< T >::create ( const modifier_type modifier)
pure virtual

◆ get()

template<class T >
virtual const object_type& scorum::chain::base_service_i< T >::get ( ) const
pure virtual

◆ is_exists()

template<class T >
virtual bool scorum::chain::base_service_i< T >::is_exists ( ) const
pure virtual

◆ remove() [1/2]

template<class T >
virtual void scorum::chain::base_service_i< T >::remove ( )
pure virtual

◆ remove() [2/2]

template<class T >
virtual void scorum::chain::base_service_i< T >::remove ( const object_type o)
pure virtual

◆ remove_all()

template<class T >
virtual void scorum::chain::base_service_i< T >::remove_all ( const std::vector< object_cref_type > &  os)
pure virtual

◆ update() [1/2]

template<class T >
virtual void scorum::chain::base_service_i< T >::update ( const modifier_type modifier)
pure virtual

◆ update() [2/2]

template<class T >
virtual void scorum::chain::base_service_i< T >::update ( const object_type o,
const modifier_type modifier 
)
pure virtual

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