26 template <
typename left_t,
typename right_t>
53 template <
typename... args_t>
54 constexpr auto operator()(args_t&&...
args)
const {
return left(std::forward<args_t>(
args)...) <= right(std::forward<args_t>(
args)...);}
62 [[no_unique_address]] left_t left;
63 [[no_unique_address]] right_t right;
67 template <
typename left_t,
typename right_t>
68 requires std::is_base_of_v<expression, std::decay_t<left_t>> || std::is_base_of_v<expression, std::decay_t<right_t>>
72 return less_than_or_equal_expression<std::decay_t<
decltype(left_expression)>, std::decay_t<
decltype(right_expression)>> {std::move(left_expression), std::move(right_expression)};
119 template <
typename left_t,
typename right_t>
Contains xtd::expressions::as_expression methods.
Contains xtd::expressions::binary_expression struct.
The xtd::expressions::expression_operand object is expression operand concept.
Definition expression_operand.hpp:27
Contains xtd::expressions::expression_operand concept.
Contains xtd::expressions::expression_stream struct.
operator_precedence
Specifies the operator precedence.
Definition operator_precedence.hpp:22
constexpr decltype(auto) as_expression(type_t &&value)
The xtd::expressions::as_expression method convert a type as xtd::expressions::expression.
Definition as_expression.hpp:33
constexpr auto operator<=(left_t left, right_t right)
Equal to the specified left and right operands.
Definition less_than_or_equal_expression.hpp:121
constexpr auto operator<<(left_t left, right_t right)
Subtract the specified left and right operands.
Definition left_shift_expression.hpp:127
constexpr auto args()
Generates a set of positional placeholders that can be decomposed using structured bindings to build ...
Definition args.hpp:43
@ less_or_equal
Represnets the less or equal operator precedence (a <= b).
Definition operator_precedence.hpp:98
@ e
The E key.
Definition console_key.hpp:96
The xtd::expressions namespace provides a lightweight, composable expression template framework for b...
Definition add_expression.hpp:14
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
The xtd::expressions::expression_stream is the streamable class for expression objects.
Definition expression_stream.hpp:23
static constexpr auto less_than_or_equal(left_t left, right_t right)
Less than or equal the specified left and right operands.
The xtd::expressions::less_than_or_equal_expression is the less or equal expression.
Definition less_than_or_equal_expression.hpp:27
constexpr auto operator()(args_t &&... args) const
Equal to the specified arguments.
Definition less_than_or_equal_expression.hpp:54
constexpr less_than_or_equal_expression(left_t left, right_t right)
Initialize a new xtd::expressions::less_than_or_equal_expression object with specified left and right...
Definition less_than_or_equal_expression.hpp:44
static constexpr operator_precedence precedence
The operator precedence. That contains one of xtd::expressions::operator_precedence values.
Definition less_than_or_equal_expression.hpp:32
constexpr less_than_or_equal_expression()=default
Initialize a new xtd::expressions::less_than_or_equal_expression object.