TVM  0.9.4
tvm::internal::PairElementToken Class Reference

#include <tvm/internal/PairElementToken.h>

Public Member Functions

 PairElementToken () noexcept
 
 PairElementToken (const PairElementToken &)=delete
 
PairElementTokenoperator= (const PairElementToken &)=delete
 
 PairElementToken (PairElementToken &&other) noexcept
 
 PairElementToken (PairElementTokenHandle &&h) noexcept
 
PairElementTokenoperator= (PairElementToken &&other) noexcept
 
PairElementTokenoperator= (PairElementTokenHandle &&h) noexcept
 
 ~PairElementToken ()
 
void pairWith (PairElementToken &other)
 
bool isPaired () const
 
bool isPairedWith (const PairElementToken &other) const
 
const PairElementTokenotherPairElement () const
 

Detailed Description

A class for representing a token that can be paired with another one. Paired tokens inform each other in case they are moved or destroyed so that they can keep track of one another. Each Token must be unique and therefore cannot be copied.

Constructor & Destructor Documentation

◆ PairElementToken() [1/4]

tvm::internal::PairElementToken::PairElementToken ( )
inlinenoexcept

◆ PairElementToken() [2/4]

tvm::internal::PairElementToken::PairElementToken ( const PairElementToken )
delete

◆ PairElementToken() [3/4]

tvm::internal::PairElementToken::PairElementToken ( PairElementToken &&  other)
inlinenoexcept

Move constructor.

◆ PairElementToken() [4/4]

tvm::internal::PairElementToken::PairElementToken ( PairElementTokenHandle &&  h)
inlinenoexcept

Construction from a PairElementTokenHandle. The token constructed and the token pointed to by the handle are paired.

◆ ~PairElementToken()

tvm::internal::PairElementToken::~PairElementToken ( )
inline

Member Function Documentation

◆ isPaired()

bool tvm::internal::PairElementToken::isPaired ( ) const
inline

Is this token paired?

◆ isPairedWith()

bool tvm::internal::PairElementToken::isPairedWith ( const PairElementToken other) const
inline

Is this token paired with other?

◆ operator=() [1/3]

PairElementToken& tvm::internal::PairElementToken::operator= ( const PairElementToken )
delete

◆ operator=() [2/3]

PairElementToken& tvm::internal::PairElementToken::operator= ( PairElementToken &&  other)
inlinenoexcept

Move-assign operator

◆ operator=() [3/3]

PairElementToken& tvm::internal::PairElementToken::operator= ( PairElementTokenHandle &&  h)
inlinenoexcept

Move-assign-like operator for PairElementTokenHandle. The token assigned to and the token pointed to by the handle are paired.

◆ otherPairElement()

const PairElementToken& tvm::internal::PairElementToken::otherPairElement ( ) const
inline

Return the other element of the pair. Throw if this object is not paired

◆ pairWith()

void tvm::internal::PairElementToken::pairWith ( PairElementToken other)
inline

Pair this with other. Throw if this object is already paired.


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