WarpX
Namespaces | Functions
ParserUtils.H File Reference
#include <AMReX_ParmParse.H>
#include <AMReX_Parser.H>
#include <AMReX_REAL.H>
#include <AMReX_Vector.H>
#include <cmath>
#include <string>
#include <type_traits>

Go to the source code of this file.

Namespaces

 utils
 
 utils::parser
 

Functions

int utils::parser::safeCastToInt (amrex::Real x, const std::string &real_name)
 Do a safe cast of a real to an int This ensures that the float value is within the range of ints and if not, raises an exception. More...
 
long utils::parser::safeCastToLong (amrex::Real x, const std::string &real_name)
 Do a safe cast of a real to a long This ensures that the float value is within the range of longs and if not, raises an exception. More...
 
amrex::Parser utils::parser::makeParser (std::string const &parse_function, amrex::Vector< std::string > const &varnames)
 Initialize an amrex::Parser object from a string containing a math expression. More...
 
void utils::parser::Store_parserString (amrex::ParmParse const &pp, std::string const &query_string, std::string &stored_string)
 Parse a string (typically a mathematical expression) from the input file and store it into a variable. More...
 
void utils::parser::Store_parserString (const amrex::ParmParse &pp, std::string const &group, std::string const &query_string, std::string &stored_string)
 Parse a string (typically a mathematical expression) from the input file and store it into a variable. The group name specified is optional part of the parameter name. A parameter that includes the group name takes precedence over one without the group name. If this routine is called like get(pp, "group", "name", val), it will query both "group.name" or "name" and return the value of "group.name" if found, otherwise the value of "name". More...
 
double utils::parser::parseStringtoDouble (const std::string &str)
 
int utils::parser::parseStringtoInt (const std::string &str, const std::string &name)
 
template<int N>
amrex::ParserExecutor< N > utils::parser::compileParser (amrex::Parser const *parser)
 
template<typename T >
int utils::parser::queryWithParser (const amrex::ParmParse &a_pp, char const *const str, T &val)
 
template<typename T >
int utils::parser::queryArrWithParser (const amrex::ParmParse &a_pp, char const *const str, std::vector< T > &val)
 
template<typename T >
int utils::parser::queryArrWithParser (const amrex::ParmParse &a_pp, char const *const str, std::vector< T > &val, const int start_ix, const int num_val)
 
template<typename T >
void utils::parser::getWithParser (const amrex::ParmParse &a_pp, char const *const str, T &val)
 
template<typename T >
void utils::parser::getArrWithParser (const amrex::ParmParse &a_pp, char const *const str, std::vector< T > &val)
 
template<typename T >
void utils::parser::getArrWithParser (const amrex::ParmParse &a_pp, char const *const str, std::vector< T > &val, const int start_ix, const int num_val)
 
template<typename T >
int utils::parser::queryWithParser (const amrex::ParmParse &a_pp, std::string const &group, char const *const str, T &val)
 
template<typename T >
int utils::parser::queryArrWithParser (const amrex::ParmParse &a_pp, std::string const &group, char const *const str, std::vector< T > &val)
 
template<typename T >
int utils::parser::queryArrWithParser (const amrex::ParmParse &a_pp, std::string const &group, char const *const str, std::vector< T > &val, const int start_ix, const int num_val)
 
int utils::parser::query (const amrex::ParmParse &a_pp, std::string const &group, char const *str, std::string &val)
 
template<typename T >
void utils::parser::getWithParser (const amrex::ParmParse &a_pp, std::string const &group, char const *const str, T &val)
 
template<typename T >
void utils::parser::getArrWithParser (const amrex::ParmParse &a_pp, std::string const &group, char const *const str, std::vector< T > &val)
 
template<typename T >
void utils::parser::getArrWithParser (const amrex::ParmParse &a_pp, std::string const &group, char const *const str, std::vector< T > &val, const int start_ix, const int num_val)
 
void utils::parser::get (amrex::ParmParse const &a_pp, std::string const &group, char const *str, std::string &val)