Flow123d  release_2.2.0-34-g18a8075
Classes | Namespaces | Macros | Functions
accessors.hh File Reference
#include <string>
#include <memory>
#include <cstdint>
#include <iosfwd>
#include <limits>
#include <type_traits>
#include "input/type_abstract.hh"
#include "input/type_base.hh"
#include "input/type_record.hh"
#include "input/type_selection.hh"
#include "input/type_tuple.hh"
#include "system/asserts.hh"
#include "system/exc_common.hh"
#include "system/file_path.hh"
#include "system/exceptions.hh"
#include "input/storage.hh"
#include "input/input_exception.hh"
#include "accessors_impl.hh"

Go to the source code of this file.

Classes

class  Input::Enum
 
class  Input::FullEnum
 
class  Input::Iterator< T >
 
class  Input::Address
 
struct  Input::Address::AddressData
 
class  Input::Record
 Accessor to the data with type Type::Record. More...
 
class  Input::Tuple
 Accessor to the data with type Type::Tuple. More...
 
class  Input::AbstractRecord
 Accessor to the polymorphic input data of a type given by an AbstracRecord object. More...
 
class  Input::Array
 Accessor to input data conforming to declared Array. More...
 
struct  Input::internal::TypeDispatch< T, Enable >
 
class  Input::IteratorBase
 
class  Input::Iterator< T >
 
struct  Input::internal::TypeDispatch< T, Enable >
 
struct  Input::internal::TypeDispatch< T, typename std::enable_if< std::is_enum< T >::value >::type >
 
struct  Input::internal::TypeDispatch< Enum >
 
struct  Input::internal::TypeDispatch< FullEnum >
 
struct  Input::internal::TypeDispatch< T, typename std::enable_if< std::is_integral< T >::value >::type >
 
struct  Input::internal::TypeDispatch< bool >
 
struct  Input::internal::TypeDispatch< T, typename std::enable_if< std::is_floating_point< T >::value >::type >
 
struct  Input::internal::TypeDispatch< string >
 
struct  Input::internal::TypeDispatch< AbstractRecord >
 
struct  Input::internal::TypeDispatch< Record >
 
struct  Input::internal::TypeDispatch< Tuple >
 
struct  Input::internal::TypeDispatch< Array >
 
struct  Input::internal::TypeDispatch< FilePath >
 

Namespaces

 Input
 
 Input::internal
 

Macros

#define INPUT_CATCH(ExceptionType, AddressEITag, input_accessor)
 

Functions

 Input::TYPEDEF_ERR_INFO (EI_InputType, const string)
 
 Input::TYPEDEF_ERR_INFO (EI_RequiredType, const string)
 
 Input::TYPEDEF_ERR_INFO (EI_CPPRequiredType, const string)
 
 Input::TYPEDEF_ERR_INFO (EI_KeyName, const string)
 
 Input::DECLARE_EXCEPTION (ExcTypeMismatch,<< "Key:"<< EI_KeyName::qval<< ". Can not construct Iterator<T> with C++ type T="<< EI_CPPRequiredType::qval<< ";\n"<< "can not convert Type: "<< EI_InputType::qval<< " to: "<< EI_RequiredType::qval)
 
 Input::TYPEDEF_ERR_INFO (EI_AccessorName, const string)
 
 Input::DECLARE_EXCEPTION (ExcAccessorForNullStorage,<< "Can not create "<< EI_AccessorName::val<< " from StorageNull.")
 
 Input::TYPEDEF_ERR_INFO (EI_ParamName, const string)
 
 Input::DECLARE_EXCEPTION (ExcAddressNullPointer,<< "NULL pointer in "<< EI_ParamName::val<< " parameter.")
 
std::ostream & Input::operator<< (std::ostream &stream, const Address &address)
 

Macro Definition Documentation

#define INPUT_CATCH (   ExceptionType,
  AddressEITag,
  input_accessor 
)
Value:
catch (ExceptionType &e ) { \
e << AddressEITag(input_accessor.address_string()); \
throw; \
}

Definition at line 64 of file accessors.hh.