Mantid
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
PropertyHelper.h File Reference
#include <boost/lexical_cast.hpp>
#include <memory>
#include "MantidKernel/IValidator.h"
#include "MantidKernel/OptionalBool.h"
#include "MantidKernel/StringTokenizer.h"
#include "MantidKernel/Strings.h"
#include <type_traits>

Go to the source code of this file.

Classes

struct  Mantid::Kernel::detail::is_range_type< T >
 
struct  Mantid::Kernel::detail::is_range_type< const T >
 
struct  Mantid::Kernel::detail::is_range_type< int >
 
struct  Mantid::Kernel::detail::is_range_type< long >
 
struct  Mantid::Kernel::detail::is_range_type< long long >
 
struct  Mantid::Kernel::detail::is_range_type< short >
 
struct  Mantid::Kernel::detail::is_range_type< unsigned int >
 
struct  Mantid::Kernel::detail::is_range_type< unsigned long >
 
struct  Mantid::Kernel::detail::is_range_type< unsigned long long >
 
struct  Mantid::Kernel::detail::is_range_type< unsigned short >
 
struct  Mantid::Kernel::detail::is_range_type< volatile const T >
 
struct  Mantid::Kernel::detail::is_range_type< volatile T >
 

Namespaces

namespace  Mantid
 Helper class which provides the Collimation Length for SANS instruments.
 
namespace  Mantid::Kernel
 
namespace  Mantid::Kernel::detail
 

Functions

template<>
void Mantid::Kernel::addingOperator (bool &, const bool &)
 
template<>
void Mantid::Kernel::addingOperator (OptionalBool &, const OptionalBool &)
 
template<typename T >
void Mantid::Kernel::addingOperator (std::shared_ptr< T > &, const std::shared_ptr< T > &)
 
template<typename T >
void Mantid::Kernel::addingOperator (std::vector< T > &lhs, const std::vector< T > &rhs)
 
template<typename T >
void Mantid::Kernel::addingOperator (T &lhs, const T &rhs)
 
template<typename T >
void Mantid::Kernel::appendValue (const std::string &strvalue, std::vector< T > &value)
 
template<>
std::vector< std::string > Mantid::Kernel::determineAllowedValues (const OptionalBool &, const IValidator &)
 
template<typename T >
std::vector< std::string > Mantid::Kernel::determineAllowedValues (const T &, const IValidator &validator)
 
template<typename T >
Mantid::Kernel::extractToValueVector (const std::string &strvalue)
 
template<typename T >
int Mantid::Kernel::findSize (const std::vector< T > &value)
 Specialization for properties that are of type vector.
 
template<typename T >
int Mantid::Kernel::findSize (const T &)
 Specialization for any type, should be appropriate for properties with a single value.
 
template<typename T >
std::string Mantid::Kernel::toPrettyString (const std::shared_ptr< T > &value, size_t maxLength=0, bool collapseLists=true)
 Throw an exception if a shared pointer is converted to a pretty string.
 
template<>
std::string Mantid::Kernel::toPrettyString (const std::vector< bool > &value, size_t maxLength, bool collapseLists, const std::string &delimiter, const std::string &unusedDelimiter, typename std::enable_if< std::is_same< bool, bool >::value >::type *)
 Explicit specialization for a property of type std::vector<bool>.
 
template<typename T >
std::string Mantid::Kernel::toPrettyString (const std::vector< std::vector< T > > &value, size_t maxLength=0, bool collapseLists=true, const std::string &outerDelimiter=",", const std::string &innerDelimiter="+")
 Specialization for a property of type std::vector<std::vector>.
 
template<typename T >
std::string Mantid::Kernel::toPrettyString (const std::vector< T > &value, size_t maxLength=0, bool collapseLists=true, const std::string &delimiter=",", const std::string &listDelimiter="-", typename std::enable_if< std::is_integral< T >::value &&std::is_arithmetic< T >::value >::type *=nullptr)
 Specialization for a property of type std::vector of integral types.
 
template<typename T >
std::string Mantid::Kernel::toPrettyString (const std::vector< T > &value, size_t maxLength=0, bool collapseLists=true, const std::string &delimiter=",", const std::string &unusedDelimiter="+", typename std::enable_if<!(std::is_integral< T >::value &&std::is_arithmetic< T >::value)>::type *=nullptr)
 Specialization for a property of type std::vector of non integral types.
 
template<typename T >
std::string Mantid::Kernel::toPrettyString (const T &value, size_t maxLength=0, bool collapseLists=true)
 Convert values to pretty strings.
 
template<typename T >
std::string Mantid::Kernel::toString (const std::shared_ptr< T > &)
 Throw an exception if a shared pointer is converted to a string.
 
template<typename T >
std::string Mantid::Kernel::toString (const std::vector< std::vector< T > > &value, const std::string &outerDelimiter=",", const std::string &innerDelimiter="+")
 Specialization for a property of type std::vector<std::vector>.
 
template<typename T >
std::string Mantid::Kernel::toString (const std::vector< T > &value, const std::string &delimiter=",")
 Specialization for a property of type std::vector.
 
template<typename T >
std::string Mantid::Kernel::toString (const T &value)
 Convert values to strings.
 
template<typename T >
void Mantid::Kernel::toValue (const std::string &, std::shared_ptr< T > &)
 
template<>
MANTID_KERNEL_DLL void Mantid::Kernel::toValue (const std::string &strValue, OptionalBool &value)
 Helper functions for setting the value of an OptionalBool property.
 
template<typename T >
void Mantid::Kernel::toValue (const std::string &strvalue, std::vector< std::vector< T > > &value, const std::string &outerDelimiter=",", const std::string &innerDelimiter="+")
 
template<typename T >
void Mantid::Kernel::toValue (const std::string &strvalue, std::vector< T > &value)
 
template<typename T >
void Mantid::Kernel::detail::toValue (const std::string &strvalue, std::vector< T > &value, std::false_type)
 
template<typename T >
void Mantid::Kernel::detail::toValue (const std::string &strvalue, std::vector< T > &value, std::true_type)
 
template<typename T >
void Mantid::Kernel::toValue (const std::string &strvalue, T &value)