![]() |
Spicy
|
#include <deferred-expression.h>
Public Member Functions | |
DeferredExpression (std::function< Result()> expr) | |
DeferredExpression (const DeferredExpression &)=default | |
DeferredExpression (DeferredExpression &&) noexcept=default | |
DeferredExpression & | operator= (const DeferredExpression &)=default |
DeferredExpression & | operator= (DeferredExpression &&) noexcept=default |
Result | operator() () const |
Wrapper for an expression that's evaluation is deferred until requested. The expression must be wrapped into a function call, and it's evaluation is requested through the wrapper's call operator.
The function should be stateless as it might be invoked an unspecified number of times.