xtd 0.2.0
Loading...
Searching...
No Matches
xtd::expressions::constant< constant_value > Struct Template Reference
Inheritance diagram for xtd::expressions::constant< constant_value >:
xtd::expressions::value_expression xtd::expressions::expression

Definition

template<auto constant_value>
struct xtd::expressions::constant< constant_value >

The xtd::expressions::constant is the constant wrapper.

Namespace
xtd::expressions
Header
#include <xtd/expressions/constant>
Library
xtd.core
Examples
The following example shows how to use xtd::expressions::expression::constant.
#include <xtd/xtd>
auto main() -> int {
// auto constant1 = [] {return 10;};
auto constant1 = constant<10> {};
println("constant1 result => {}", constant1());
auto constant2 = expression::constant<10>();
println("constant2 result => {}", constant2());
auto value = 30;
//auto constant3 = [value] {return value;};
auto constant3 = constant<value> {};
println("constant3 result => {}", constant3());
auto constant4 = expression::constant<value>();
println("constant4 result => {}", constant4());
//auto expr1 = [value] {return 20 + value;};
println("expr1 result => {}", expr1());
}
// This code produces the following output :
//
// constant1 result => 10
// constant2 result => 10
// constant3 result => 30
// constant4 result => 30
//
// expr1 result => 50
void println()
Writes the current line terminator to the standard output stream using the specified format informati...
Definition println.hpp:167
The xtd::expressions::constant is the constant wrapper.
Definition constant.hpp:55
constexpr constant()=default
Initialize a new xtd::expressions::constant object.
static constexpr auto constant()
Gets the constant value.
The xtd::expressions::value is the value wrapper.
Definition value.hpp:55

Public Fields

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

Public Constructors

constexpr constant ()=default
 Initialize a new xtd::expressions::constant object.

Public Operators

constexpr auto operator() (auto &&...) const
 Gets the constant value.

Additional Inherited Members

Constructor & Destructor Documentation

◆ constant()

template<auto constant_value>
xtd::expressions::constant< constant_value >::constant ( )
constexprdefault

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

Member Function Documentation

◆ operator()()

template<auto constant_value>
auto xtd::expressions::constant< constant_value >::operator() ( auto && ...) const
inlineconstexpr

Gets the constant value.

Returns
The constant value.

Member Data Documentation

◆ precedence

template<auto constant_value>
operator_precedence xtd::expressions::constant< constant_value >::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: