CASM  1.1.0
A Clusters Approach to Statistical Mechanics
io_traits.hh File Reference
#include <iostream>
#include <map>
#include <set>
#include <sstream>
#include <stdexcept>
#include <string>
#include <vector>
#include "casm/casm_io/Help.hh"

Go to the source code of this file.

Namespaces

 CASM
 Main CASM namespace.
 

Macros

#define ENUM_TRAITS(ENUM)
 

Functions

template<typename ENUM >
std::string CASM::to_string (ENUM val)
 Return string representation of enum class. More...
 
template<typename ENUM >
std::string CASM::multiline_enum_help ()
 Print help message describing recognized strings for allowed enum values. More...
 
template<typename StringContainer >
std::string CASM::standard_singleline_help (StringContainer options, std::string _default="")
 Print short help message describing recognized strings for allowed enum values. More...
 
template<typename ENUM >
std::string CASM::standard_singleline_enum_help (std::string _default="", std::string other="")
 Print short help message describing recognized strings for allowed enum values. More...
 
template<typename ENUM >
std::string CASM::singleline_enum_help ()
 Print short help message describing recognized strings for allowed enum values. More...
 
template<typename ENUM >
void CASM::invalid_enum_string (std::string val)
 Throw invalid_argument error for unrecognized strings. More...
 
template<typename ENUM >
std::set< ENUM > CASM::matches (const std::string &val)
 Return all matching enum class members from string representation. More...
 
template<typename ENUM >
ENUM CASM::from_string (const std::string &val)
 Return enum class object from string representation. More...
 

Macro Definition Documentation

◆ ENUM_TRAITS

#define ENUM_TRAITS (   ENUM)
Value:
template <> \
struct traits<ENUM> { \
static const std::string name; \
\
static const std::multimap<ENUM, std::vector<std::string> > strval; \
}; \
template <> \
inline std::string singleline_help<ENUM>() { \
return singleline_enum_help<ENUM>(); \
} \
template <> \
inline std::string multiline_help<ENUM>() { \
return multiline_enum_help<ENUM>(); \
}
GenericDatumFormatter< std::string, ConfigEnumDataType > name()

Definition at line 213 of file io_traits.hh.