LibrePCB Developers Documentation
Loading...
Searching...
No Matches
RustHandle< T > Struct Template Referencefinal

Scoped pointer for Rust objects. More...

#include <rusthandle.h>

+ Inheritance diagram for RustHandle< T >:
+ Collaboration diagram for RustHandle< T >:

Public Types

typedef void(* Deleter) (T *)
 

Public Member Functions

 RustHandle ()=delete
 
 RustHandle (const RustHandle &other)=delete
 
RustHandleoperator= (const RustHandle &rhs)=delete
 
 RustHandle (T &obj, Deleter deleter) noexcept
 
 RustHandle (RustHandle &&other) noexcept
 
 ~RustHandle () noexcept
 
const T * operator* () const noexcept
 
T * operator* () noexcept
 

Public Attributes

T * mObj
 
Deleter mDeleter
 

Detailed Description

template<typename T>
struct librepcb::RustHandle< T >

Scoped pointer for Rust objects.

Member Typedef Documentation

◆ Deleter

template<typename T >
typedef void(* Deleter) (T *)

Constructor & Destructor Documentation

◆ RustHandle() [1/4]

template<typename T >
RustHandle ( )
delete

◆ RustHandle() [2/4]

template<typename T >
RustHandle ( const RustHandle< T > &  other)
delete

◆ RustHandle() [3/4]

template<typename T >
RustHandle ( T &  obj,
Deleter  deleter 
)
inlinenoexcept

◆ RustHandle() [4/4]

template<typename T >
RustHandle ( RustHandle< T > &&  other)
inlinenoexcept

◆ ~RustHandle()

template<typename T >
~RustHandle ( )
inlinenoexcept

Member Function Documentation

◆ operator=()

template<typename T >
RustHandle & operator= ( const RustHandle< T > &  rhs)
delete

◆ operator*() [1/2]

template<typename T >
const T * operator* ( ) const
inlinenoexcept

◆ operator*() [2/2]

template<typename T >
T * operator* ( )
inlinenoexcept

Member Data Documentation

◆ mObj

template<typename T >
T* mObj

◆ mDeleter

template<typename T >
Deleter mDeleter

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