xtd 1.0.0
Loading...
Searching...
No Matches
xtd::expressions::equal< left_t, right_t > Struct Template Reference
Inheritance diagram for xtd::expressions::equal< left_t, right_t >:
xtd::expressions::binary_expression xtd::expressions::expression

Definition

template<typename left_t, typename right_t>
struct xtd::expressions::equal< left_t, right_t >

The xtd::expressions::equal is the equal expression.

Namespace
xtd::expressions
Header
#include <xtd/expressions/equal>
Library
xtd.core
Examples
The following example shows how to use xtd::expressions::expression::equal.
#include <xtd/xtd>
auto main() -> int {
// auto equal1 = [](auto&& _) {return _ == 10;};
auto equal1 = _ == 10;
println("equal1 result => {}", equal1(42));
auto equal2 = expression::equal(_, 10);
println("equal2 result => {}", equal2(42));
// auto equal3 = [](auto&& _1, auto&& _2) {return _1 == _2;};
auto equal3 = _1 == _2;
println("equal3 result => {}", equal3(42, 42));
auto equal4 = expression::equal(_1, _2);
println("equal4 result => {}", equal4(42, 42));
}
// This code produces the following output :
//
// equal1 result => false
// equal2 result => false
//
// equal3 result => true
// equal4 result => true
constexpr auto _
The xtd::expressions::_ arg instance is used by expression that have only one argument.
Definition args.hpp:68
constexpr auto _2
The xtd::expressions::_2 arg instance is second argument used by expression.
Definition args.hpp:119
constexpr auto _1
The xtd::expressions::_1 arg instance is first argument used by expression.
Definition args.hpp:94
auto println(FILE *file) -> void
Writes the current line terminator to the file output stream using the specified format information.
Definition println.hpp:15
static constexpr auto equal(left_t left, right_t right)
Equal the specified left and right operands.
Remarks
The xtd::expressions::equal struct is used by xtd::expressions::expression::equal expression.

Public Fields

static constexpr operator_precedence precedence
 The operator precedence. That contains one of xtd::expressions::operator_precedence values.

Public Constructors

constexpr equal ()=default
 Initialize a new xtd::expressions::equal object.
constexpr equal (left_t left, right_t right)
 Initialize a new xtd::expressions::equal object with specified left and right operands.

Public Operators

template<typename... args_t>
constexpr auto operator() (args_t &&... args) const
 Equal to the specified arguments.

Additional Inherited Members

Constructor & Destructor Documentation

◆ equal() [1/2]

template<typename left_t, typename right_t>
xtd::expressions::equal< left_t, right_t >::equal ( )
constexprdefault

Initialize a new xtd::expressions::equal object.

◆ equal() [2/2]

template<typename left_t, typename right_t>
xtd::expressions::equal< left_t, right_t >::equal ( left_t left,
right_t right )
inlineconstexpr

Initialize a new xtd::expressions::equal object with specified left and right operands.

Parameters
leftThe left operand.
rightThe right operand.

Member Function Documentation

◆ operator()()

template<typename left_t, typename right_t>
template<typename... args_t>
auto xtd::expressions::equal< left_t, right_t >::operator() ( args_t &&... args) const
inlineconstexpr

Equal to the specified arguments.

Parameters
argsthe arguments to equal.
Returns
The result of equal.

Member Data Documentation

◆ precedence

template<typename left_t, typename right_t>
operator_precedence xtd::expressions::equal< left_t, right_t >::precedence
staticconstexpr

The operator precedence. That contains one of xtd::expressions::operator_precedence values.


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