Callable wrapper around an integer parser expression with N variables.
More...
#include <AMReX_IParser.H>
|
| __host__ __device__ long long | operator() () const noexcept |
| | Evaluate constant expressions (N == 0) and return the integer result.
|
| |
template<std::integral... Ts>
requires (N > 0 && sizeof...(Ts) == N) |
| __host__ __device__ long long | operator() (Ts... var) const noexcept |
| | Evaluate the expression with N integral arguments.
|
| |
| __host__ __device__ long long | operator() (GpuArray< long long, N > const &var) const noexcept |
| | Evaluate using an explicit array of integer arguments.
|
| |
| __host__ __device__ | operator bool () const |
| | True when this is a valid executor.
|
| |
template<
int N>
struct amrex::IParserExecutor< N >
Callable wrapper around an integer parser expression with N variables.
Instances are returned by IParser::compile() / IParser::compileHost() and expose host/device operator() overloads that evaluate to 64-bit integers.
◆ operator bool()
True when this is a valid executor.
◆ operator()() [1/3]
Evaluate constant expressions (N == 0) and return the integer result.
◆ operator()() [2/3]
Evaluate using an explicit array of integer arguments.
- Parameters
-
| var | Argument array in registration order. |
◆ operator()() [3/3]
template<std::integral... Ts>
requires (N > 0 && sizeof...(Ts) == N)
Evaluate the expression with N integral arguments.
- Parameters
-
| var | Scalar arguments supplied in registration order. |
- Returns
- Result promoted to
long long.
◆ m_device_executor
Pointer to device bytecode (if copied).
◆ m_host_executor
Pointer to host bytecode.
The documentation for this struct was generated from the following file: