KASSERT  0.0.1
Karlsruhe Assertion Library
kassert::internal::LhsExpression< LhsT > Class Template Reference

The left hand size of a decomposed expression. This can either be turned into a BinaryExpr if an operand or relation follows, or into a UnaryExpr otherwise. More...

#include <expression_decomposition.hpp>

Public Member Functions

 LhsExpression (LhsT const &lhs)
 Constructs this left hand size of a decomposed expression. More...
 
UnaryExpression< LhsT > make_unary ()
 Turns this expression into an UnaryExpr. This might only be called if the wrapped expression is implicitly convertible to bool. More...
 
 operator bool ()
 Implicitly cast to bool. This is used when encountering && or ||. More...
 

Detailed Description

template<typename LhsT>
class kassert::internal::LhsExpression< LhsT >

The left hand size of a decomposed expression. This can either be turned into a BinaryExpr if an operand or relation follows, or into a UnaryExpr otherwise.

Template Parameters
LhsTThe expression type.

Constructor & Destructor Documentation

◆ LhsExpression()

template<typename LhsT >
kassert::internal::LhsExpression< LhsT >::LhsExpression ( LhsT const &  lhs)
inlineexplicit

Constructs this left hand size of a decomposed expression.

Parameters
lhsThe wrapped expression.

Member Function Documentation

◆ make_unary()

template<typename LhsT >
UnaryExpression< LhsT > kassert::internal::LhsExpression< LhsT >::make_unary ( )
inline

Turns this expression into an UnaryExpr. This might only be called if the wrapped expression is implicitly convertible to bool.

Returns
This expression as UnaryExpr.

◆ operator bool()

template<typename LhsT >
kassert::internal::LhsExpression< LhsT >::operator bool ( )
inline

Implicitly cast to bool. This is used when encountering && or ||.

Returns
The boolean result of the expression.

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