HOPS
HOPS class reference
Functions
MHO_TemplateTypenameDeduction.hh File Reference
#include <iostream>
#include <string>
#include <tuple>
#include <algorithm>

Go to the source code of this file.

Functions

template<typename T >
std::string compiler_func_function ()
 Returns a string containing the full name of the current function using compiler-specific macros. More...
 
template<typename T >
std::string compiler_func_prefix ()
 Returns a compiler-specific prefix string for template type T. More...
 
template<typename T >
std::string compiler_func_suffix ()
 Returns a string suffix for function names based on compiler type. More...
 
template<typename XClassType >
std::string MHO_ClassName ()
 Determines and returns the name of class XClassType as a string for postprocessing in MHO. More...
 
template<>
std::string MHO_ClassName< std::string > ()
 Specialization for std::string to return class name prefix. More...
 
template<typename XClassType >
std::string MHO_RawCompilerName ()
 Returns a string representation of the compiler name for given template type XClassType. More...
 
template<typename XClassType >
std::string MHO_RawCompilerNameWithoutSpaces ()
 Extracts and strips spaces from class name in compiler function for given XClassType. More...
 
template<typename XClassType >
std::string MHO_TupleElementNameWithoutSpaces ()
 Extracts and returns the name of a class when used within a std::tuple<. More...
 

Function Documentation

◆ compiler_func_function()

template<typename T >
std::string compiler_func_function ( )

Returns a string containing the full name of the current function using compiler-specific macros.

Returns
std::string containing the full name of the current function.

◆ compiler_func_prefix()

template<typename T >
std::string compiler_func_prefix ( )

Returns a compiler-specific prefix string for template type T.

Returns
std::string containing compiler-specific prefix for template type T.

◆ compiler_func_suffix()

template<typename T >
std::string compiler_func_suffix ( )

Returns a string suffix for function names based on compiler type.

Returns
std::string containing either "]" (for Clang) or ";" (for GCC).

◆ MHO_ClassName()

template<typename XClassType >
std::string MHO_ClassName ( )

Determines and returns the name of class XClassType as a string for postprocessing in MHO.

Returns
std::string containing the name of class XClassType

◆ MHO_ClassName< std::string >()

template<>
std::string MHO_ClassName< std::string > ( )
inline

Specialization for std::string to return class name prefix.

Returns
std::string containing compiler-specific prefix for class name.

◆ MHO_RawCompilerName()

template<typename XClassType >
std::string MHO_RawCompilerName ( )

Returns a string representation of the compiler name for given template type XClassType.

Returns
std::string containing the compiler name prefixed by type information

◆ MHO_RawCompilerNameWithoutSpaces()

template<typename XClassType >
std::string MHO_RawCompilerNameWithoutSpaces ( )

Extracts and strips spaces from class name in compiler function for given XClassType.

Returns
String containing class name without spaces

◆ MHO_TupleElementNameWithoutSpaces()

template<typename XClassType >
std::string MHO_TupleElementNameWithoutSpaces ( )

Extracts and returns the name of a class when used within a std::tuple<.

Returns
std::string containing the class name without spaces