TVM  0.9.4
tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight > Class Template Reference

#include <tvm/requirements/abstract/SingleSolvingRequirement.h>

Inheritance diagram for tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >:
Collaboration diagram for tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >:

Public Member Functions

const T & value () const
 
void value (const T &val)
 
bool isDefault () const
 

Protected Member Functions

 SingleSolvingRequirement (const T &val, bool isDefault)
 
 SingleSolvingRequirement (const SingleSolvingRequirement< T, !Lightweight > &other)
 
SingleSolvingRequirementoperator= (const SingleSolvingRequirement< T, !Lightweight > &other)
 
SingleSolvingRequirementoperator= (const T &val)
 

Protected Attributes

bool default_
 
value_
 

Detailed Description

template<typename T, bool Lightweight = true>
class tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >

A class representing the way a constraint has to be solved and how it interacts with other constraints in term of hierarchical and weighted priorities.

This is a base class for the sole purpose of convenience.

Constructor & Destructor Documentation

◆ SingleSolvingRequirement() [1/2]

template<typename T , bool Lightweight = true>
tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::SingleSolvingRequirement ( const T &  val,
bool  isDefault 
)
inlineprotected

◆ SingleSolvingRequirement() [2/2]

template<typename T , bool Lightweight = true>
tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::SingleSolvingRequirement ( const SingleSolvingRequirement< T, !Lightweight > &  other)
inlineprotected

Member Function Documentation

◆ isDefault()

template<typename T , bool Lightweight = true>
bool tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::isDefault ( ) const
inline

check it the requirement is at its default value.

◆ operator=() [1/2]

template<typename T , bool Lightweight = true>
SingleSolvingRequirement& tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::operator= ( const SingleSolvingRequirement< T, !Lightweight > &  other)
inlineprotected

◆ operator=() [2/2]

template<typename T , bool Lightweight = true>
SingleSolvingRequirement& tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::operator= ( const T &  val)
inlineprotected

◆ value() [1/2]

template<typename T , bool Lightweight = true>
const T& tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::value ( ) const
inline

Get the current value.

◆ value() [2/2]

template<typename T , bool Lightweight = true>
void tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::value ( const T &  val)
inline

Change the current value

Member Data Documentation

◆ default_

template<typename T , bool Lightweight = true>
bool tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::default_
protected

Is this requirement at its default value?

◆ value_

template<typename T , bool Lightweight = true>
T tvm::requirements::abstract::SingleSolvingRequirement< T, Lightweight >::value_
protected

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