Block-Structured AMR Software Framework
amrex::ParserExecutor< N > Struct Template Reference

#include <AMReX_Parser.H>

Public Member Functions

template<int M = N, std::enable_if_t< M==0, int > = 0>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double operator() () const noexcept
 
template<typename... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE std::enable_if_t< sizeof...(Ts)==N &&!amrex::Same< float, Ts... >::value, double > operator() (Ts... var) const noexcept
 
template<typename... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE std::enable_if_t< sizeof...(Ts)==N &&amrex::Same< float, Ts... >::value, float > operator() (Ts... var) const noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double operator() (GpuArray< double, N > const &var) const noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE operator bool () const
 

Public Attributes

char * m_host_executor = nullptr
 
char * m_device_executor = nullptr
 

Member Function Documentation

◆ operator bool()

template<int N>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::ParserExecutor< N >::operator bool ( ) const
inlineexplicit

◆ operator()() [1/4]

template<int N>
template<int M = N, std::enable_if_t< M==0, int > = 0>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double amrex::ParserExecutor< N >::operator() ( ) const
inlinenoexcept

◆ operator()() [2/4]

template<int N>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double amrex::ParserExecutor< N >::operator() ( GpuArray< double, N > const &  var) const
inlinenoexcept

◆ operator()() [3/4]

template<int N>
template<typename... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE std::enable_if_t<sizeof...(Ts) == N && !amrex::Same<float,Ts...>::value, double> amrex::ParserExecutor< N >::operator() ( Ts...  var) const
inlinenoexcept

◆ operator()() [4/4]

template<int N>
template<typename... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE std::enable_if_t<sizeof...(Ts) == N && amrex::Same<float,Ts...>::value, float> amrex::ParserExecutor< N >::operator() ( Ts...  var) const
inlinenoexcept

Member Data Documentation

◆ m_device_executor

template<int N>
char* amrex::ParserExecutor< N >::m_device_executor = nullptr

◆ m_host_executor

template<int N>
char* amrex::ParserExecutor< N >::m_host_executor = nullptr

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