ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
Variant.hpp File Reference
#include "None.hpp"
#include <utils/Vector.hpp>
#include <utils/serialization/unordered_map.hpp>
#include <boost/serialization/serialization.hpp>
#include <boost/serialization/string.hpp>
#include <boost/serialization/variant.hpp>
#include <boost/serialization/vector.hpp>
#include <boost/variant.hpp>
#include <cstddef>
#include <memory>
#include <string>
#include <type_traits>
#include <unordered_map>
#include <vector>
+ Include dependency graph for Variant.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Utils
 
namespace  ScriptInterface
 

Typedefs

using Utils::Vector3b = Utils::Vector< bool, 3 >
 
using ScriptInterface::ObjectRef = std::shared_ptr< ObjectHandle >
 
using ScriptInterface::Variant = boost::make_recursive_variant< None, bool, int, std::size_t, double, std::string, ObjectRef, Utils::Vector3b, Utils::Vector3i, Utils::Vector2d, Utils::Vector3d, Utils::Vector4d, std::vector< int >, std::vector< double >, std::vector< boost::recursive_variant_ >, std::unordered_map< int, boost::recursive_variant_ >, std::unordered_map< std::string, boost::recursive_variant_ > >::type
 Possible types for parameters.
 
using ScriptInterface::VariantMap = std::unordered_map< std::string, Variant >
 

Functions

template<typename T >
Variant ScriptInterface::make_variant (const T &x)
 Make a Variant from argument.
 
template<typename K , typename V >
auto ScriptInterface::make_unordered_map_of_variants (std::unordered_map< K, V > const &v)
 
template<typename T >
auto ScriptInterface::make_vector_of_variants (std::vector< T > const &v)
 
template<class T >
bool ScriptInterface::is_type (Variant const &v)
 Check is a Variant holds a specific type.
 
bool ScriptInterface::is_none (Variant const &v)
 

Variables

constexpr const None ScriptInterface::none {}
 None-"literal".