11#ifndef CHAISCRIPT_EXCEPTION_SPECIFICATION_HPP_
12#define CHAISCRIPT_EXCEPTION_SPECIFICATION_HPP_
44 template<
typename ...
T>
49 (void)std::initializer_list<int>{(
throw_type<T>(bv, t_engine), 0)...};
108 template<
typename ...
T>
A wrapper for holding any valid C++ type. All types in ChaiScript are Boxed_Value objects.
Definition boxed_value.hpp:28
Definition dispatchkit.hpp:438
decltype(auto) boxed_cast(const Boxed_Value &bv) const
casts an object while applying any Dynamic_Conversion available
Definition dispatchkit.hpp:462
Thrown in the event that a Boxed_Value cannot be cast to the desired type.
Definition bad_boxed_cast.hpp:34
Classes and functions reserved for internal use. Items in this namespace are not supported.
Classes which may be thrown during error cases when ChaiScript is executing.
Definition bad_boxed_cast.hpp:27
Namespace chaiscript contains every API call that the average user will be concerned with.
std::shared_ptr< detail::Exception_Handler_Base > Exception_Handler
Used in the automatic unboxing of exceptions thrown during script evaluation.
Definition exception_specification.hpp:104
Exception_Handler exception_specification()
creates a chaiscript::Exception_Handler which handles one type of exception unboxing
Definition exception_specification.hpp:109
Definition exception_specification.hpp:31
static void throw_type(const Boxed_Value &bv, const Dispatch_Engine &t_engine)
Definition exception_specification.hpp:38
virtual void handle(const Boxed_Value &bv, const Dispatch_Engine &t_engine)=0
virtual ~Exception_Handler_Base()=default
Definition exception_specification.hpp:46
void handle(const Boxed_Value &bv, const Dispatch_Engine &t_engine) override
Definition exception_specification.hpp:47