Silicium
Classes | Namespaces | Macros | Typedefs | Functions
config.hpp File Reference
#include <memory>
#include <stdexcept>
#include <boost/config.hpp>
#include <boost/cstdint.hpp>
#include <boost/version.hpp>
#include <boost/preprocessor/if.hpp>

Go to the source code of this file.

Classes

struct  Si::nothing
 
struct  Si::is_copy_constructible< T >
 
struct  Si::is_copy_assignable< T >
 
struct  Si::is_default_constructible< T >
 
struct  Si::is_nothrow_default_constructible< T >
 
struct  Si::is_nothrow_move_constructible< T >
 
struct  Si::is_nothrow_move_assignable< T >
 
struct  Si::is_nothrow_destructible< T >
 
struct  Si::is_move_assignable< T >
 
struct  Si::is_move_assignable< std::unique_ptr< T > >
 
struct  Si::is_move_constructible< T >
 
struct  Si::is_move_constructible< std::unique_ptr< T > >
 

Namespaces

 Si
 

Macros

#define SILICIUM_GCC   0
 
#define SILICIUM_COMPILER_CXX11   0
 
#define SILICIUM_COMPILER_CXX14   0
 
#define SILICIUM_HAS_EXCEPTIONS   1
 
#define SILICIUM_UNREACHABLE()   throw ::std::logic_error("unreachable " __FILE__ ":" BOOST_STRINGIZE(__LINE__))
 
#define SILICIUM_COMPILER_GENERATES_MOVES   0
 
#define SILICIUM_COMPILER_HAS_WORKING_NOEXCEPT   0
 
#define SILICIUM_NORETURN   __attribute__ ((__noreturn__))
 
#define SILICIUM_COMPILER_HAS_RVALUE_THIS_QUALIFIER   0
 
#define SILICIUM_COMPILER_HAS_AUTO_RETURN_TYPE   0
 
#define SILICIUM_COMPILER_HAS_EXTENDED_CAPTURE   0
 
#define SILICIUM_CAPTURE_EXPRESSION(name, value)   name
 
#define SILICIUM_COMPILER_HAS_VARIADIC_PACK_EXPANSION   0
 
#define SILICIUM_COMPILER_HAS_USING   0
 
#define SILICIUM_COMPILER_HAS_CXX11_UNION   1
 
#define SILICIUM_DELETED_FUNCTION(f)   private: f;
 
#define SILICIUM_DISABLE_COPY(struct_name)
 
#define SILICIUM_DEFAULT_NOEXCEPT_MOVE(struct_name)
 
#define SILICIUM_DEFAULT_MOVE(struct_name)
 
#define SILICIUM_DEFAULT_COPY(struct_name)
 
#define SILICIUM_DEPRECATED   __attribute__((deprecated))
 
#define SILICIUM_OVERRIDE   override
 
#define SILICIUM_FINAL   final
 
#define SILICIUM_USE_RESULT   __attribute__((warn_unused_result))
 
#define SILICIUM_CXX14_CONSTEXPR
 
#define SILICIUM_IF(condition, value)   BOOST_PP_IF(condition, value, BOOST_PP_EMPTY())
 
#define SILICIUM_IF_NOT(condition, value)   BOOST_PP_IF(condition, BOOST_PP_EMPTY(), value)
 
#define SILICIUM_MOVE_IF_COMPILER_LACKS_RVALUE_QUALIFIERS(should_be_rvalue)   BOOST_PP_IF(SILICIUM_COMPILER_HAS_RVALUE_THIS_QUALIFIER, (should_be_rvalue), std::move((should_be_rvalue)))
 
#define SILICIUM_HAS_PROPER_COPY_TRAITS   0
 

Typedefs

typedef std::uintptr_t Si::uintptr_t
 

Functions

bool Si::operator== (nothing const &, nothing const &)
 
template<class T , class... Args>
auto Si::make_unique (Args &&...args) -> std::unique_ptr< T >
 
template<class To , class From >
To Si::function_ptr_cast (From from)
 

Macro Definition Documentation

#define SILICIUM_CAPTURE_EXPRESSION (   name,
  value 
)    name
#define SILICIUM_COMPILER_CXX11   0
#define SILICIUM_COMPILER_CXX14   0
#define SILICIUM_COMPILER_GENERATES_MOVES   0
#define SILICIUM_COMPILER_HAS_AUTO_RETURN_TYPE   0
#define SILICIUM_COMPILER_HAS_CXX11_UNION   1
#define SILICIUM_COMPILER_HAS_EXTENDED_CAPTURE   0
#define SILICIUM_COMPILER_HAS_RVALUE_THIS_QUALIFIER   0
#define SILICIUM_COMPILER_HAS_USING   0
#define SILICIUM_COMPILER_HAS_VARIADIC_PACK_EXPANSION   0
#define SILICIUM_COMPILER_HAS_WORKING_NOEXCEPT   0
#define SILICIUM_CXX14_CONSTEXPR
#define SILICIUM_DEFAULT_COPY (   struct_name)
Value:
struct_name(struct_name const &) = default; \
struct_name &operator = (struct_name const &) = default;
#define SILICIUM_DEFAULT_MOVE (   struct_name)
Value:
struct_name(struct_name &&) = default; \
struct_name &operator = (struct_name &&) = default;
#define SILICIUM_DEFAULT_NOEXCEPT_MOVE (   struct_name)
Value:
struct_name(struct_name &&) BOOST_NOEXCEPT = default; \
struct_name &operator = (struct_name &&) BOOST_NOEXCEPT = default;
#define SILICIUM_DELETED_FUNCTION (   f)    private: f;
#define SILICIUM_DEPRECATED   __attribute__((deprecated))
#define SILICIUM_DISABLE_COPY (   struct_name)
Value:
SILICIUM_DELETED_FUNCTION(struct_name(struct_name const &)) \
SILICIUM_DELETED_FUNCTION(struct_name &operator = (struct_name const &))
#define SILICIUM_DELETED_FUNCTION(f)
Definition: config.hpp:111
#define SILICIUM_FINAL   final
#define SILICIUM_GCC   0
#define SILICIUM_HAS_EXCEPTIONS   1
#define SILICIUM_HAS_PROPER_COPY_TRAITS   0
#define SILICIUM_IF (   condition,
  value 
)    BOOST_PP_IF(condition, value, BOOST_PP_EMPTY())
#define SILICIUM_IF_NOT (   condition,
  value 
)    BOOST_PP_IF(condition, BOOST_PP_EMPTY(), value)
#define SILICIUM_MOVE_IF_COMPILER_LACKS_RVALUE_QUALIFIERS (   should_be_rvalue)    BOOST_PP_IF(SILICIUM_COMPILER_HAS_RVALUE_THIS_QUALIFIER, (should_be_rvalue), std::move((should_be_rvalue)))
#define SILICIUM_NORETURN   __attribute__ ((__noreturn__))
#define SILICIUM_OVERRIDE   override
#define SILICIUM_UNREACHABLE ( )    throw ::std::logic_error("unreachable " __FILE__ ":" BOOST_STRINGIZE(__LINE__))
#define SILICIUM_USE_RESULT   __attribute__((warn_unused_result))