From c0bf6ee99dac14a19530179874f6c95255fde173 Mon Sep 17 00:00:00 2001 From: Jason Turner Date: Sat, 10 May 2014 18:41:11 -0600 Subject: [PATCH] Apply corrections from the "include what you use" tool Generally cleanups of the includes. Making sure each file can properly stand on its own and forward declares when possible. --- include/chaiscript/chaiscript_stdlib.hpp | 8 ++++ .../chaiscript/dispatchkit/bad_boxed_cast.hpp | 7 ++++ include/chaiscript/dispatchkit/bootstrap.hpp | 28 ++++++++++--- .../chaiscript/dispatchkit/bootstrap_stl.hpp | 14 ++++++- include/chaiscript/dispatchkit/boxed_cast.hpp | 22 +++++++--- .../dispatchkit/boxed_cast_helper.hpp | 6 ++- .../chaiscript/dispatchkit/boxed_number.hpp | 16 +++++-- .../chaiscript/dispatchkit/boxed_value.hpp | 8 ++-- .../chaiscript/dispatchkit/dispatchkit.hpp | 42 ++++++++++++++----- .../dispatchkit/dynamic_cast_conversion.hpp | 11 +++-- .../chaiscript/dispatchkit/dynamic_object.hpp | 19 +++++++++ .../dispatchkit/exception_specification.hpp | 10 +++++ .../chaiscript/dispatchkit/function_call.hpp | 15 +++++-- .../dispatchkit/function_call_detail.hpp | 9 ++++ .../chaiscript/dispatchkit/handle_return.hpp | 16 ++++--- .../dispatchkit/proxy_functions.hpp | 23 ++++++++-- .../dispatchkit/proxy_functions_detail.hpp | 25 +++++++---- .../dispatchkit/register_function.hpp | 6 ++- include/chaiscript/dispatchkit/type_info.hpp | 5 ++- .../language/chaiscript_algebraic.hpp | 2 + .../chaiscript/language/chaiscript_common.hpp | 16 ++++++- .../chaiscript/language/chaiscript_engine.hpp | 21 +++++++++- .../chaiscript/language/chaiscript_eval.hpp | 28 ++++++++++++- .../chaiscript/language/chaiscript_parser.hpp | 8 +++- include/chaiscript/utility/utility.hpp | 7 +++- 25 files changed, 310 insertions(+), 62 deletions(-) diff --git a/include/chaiscript/chaiscript_stdlib.hpp b/include/chaiscript/chaiscript_stdlib.hpp index 54d8c04..8d4986a 100644 --- a/include/chaiscript/chaiscript_stdlib.hpp +++ b/include/chaiscript/chaiscript_stdlib.hpp @@ -7,9 +7,17 @@ #ifndef CHAISCRIPT_STDLIB_HPP_ #define CHAISCRIPT_STDLIB_HPP_ +#include +#include +#include +#include +#include + #include "chaiscript_defines.hpp" +#include "dispatchkit/dispatchkit.hpp" #include "dispatchkit/bootstrap.hpp" #include "dispatchkit/bootstrap_stl.hpp" +#include "dispatchkit/boxed_value.hpp" /// @file /// diff --git a/include/chaiscript/dispatchkit/bad_boxed_cast.hpp b/include/chaiscript/dispatchkit/bad_boxed_cast.hpp index 6ae625a..3040b71 100644 --- a/include/chaiscript/dispatchkit/bad_boxed_cast.hpp +++ b/include/chaiscript/dispatchkit/bad_boxed_cast.hpp @@ -7,8 +7,15 @@ #ifndef CHAISCRIPT_BAD_BOXED_CAST_HPP_ #define CHAISCRIPT_BAD_BOXED_CAST_HPP_ +#include +#include + #include "type_info.hpp" +namespace chaiscript { +class Type_Info; +} // namespace chaiscript + namespace chaiscript { namespace exception diff --git a/include/chaiscript/dispatchkit/bootstrap.hpp b/include/chaiscript/dispatchkit/bootstrap.hpp index 3bb5cfd..9b6de9a 100644 --- a/include/chaiscript/dispatchkit/bootstrap.hpp +++ b/include/chaiscript/dispatchkit/bootstrap.hpp @@ -7,13 +7,31 @@ #ifndef CHAISCRIPT_BOOTSTRAP_HPP_ #define CHAISCRIPT_BOOTSTRAP_HPP_ -#include "dispatchkit.hpp" -#include "dynamic_object.hpp" -#include "register_function.hpp" -#include "operators.hpp" -#include "boxed_number.hpp" +#include +#include +#include +#include +#include +#include #include +#include +#include #include +#include + +#include "bad_boxed_cast.hpp" +#include "boxed_cast.hpp" +#include "boxed_number.hpp" +#include "boxed_value.hpp" +#include "dispatchkit.hpp" +#include "dynamic_cast_conversion.hpp" +#include "dynamic_object.hpp" +#include "operators.hpp" +#include "proxy_constructors.hpp" +#include "proxy_functions.hpp" +#include "proxy_functions_detail.hpp" +#include "register_function.hpp" +#include "type_info.hpp" namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/bootstrap_stl.hpp b/include/chaiscript/dispatchkit/bootstrap_stl.hpp index af15e12..d838f56 100644 --- a/include/chaiscript/dispatchkit/bootstrap_stl.hpp +++ b/include/chaiscript/dispatchkit/bootstrap_stl.hpp @@ -13,9 +13,21 @@ #ifndef CHAISCRIPT_BOOTSTRAP_STL_HPP_ #define CHAISCRIPT_BOOTSTRAP_STL_HPP_ -#include "dispatchkit.hpp" +#include +#include +#include +#include +#include +#include +#include + #include "bootstrap.hpp" +#include "boxed_value.hpp" +#include "dispatchkit.hpp" +#include "operators.hpp" +#include "proxy_constructors.hpp" #include "register_function.hpp" +#include "type_info.hpp" namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/boxed_cast.hpp b/include/chaiscript/dispatchkit/boxed_cast.hpp index c153c99..c055ac4 100644 --- a/include/chaiscript/dispatchkit/boxed_cast.hpp +++ b/include/chaiscript/dispatchkit/boxed_cast.hpp @@ -7,14 +7,24 @@ #ifndef CHAISCRIPT_BOXED_CAST_HPP_ #define CHAISCRIPT_BOXED_CAST_HPP_ +#include + #include "../chaiscript_defines.hpp" - -#include "type_info.hpp" -#include "boxed_value.hpp" -#include "boxed_cast_helper.hpp" -#include "dynamic_cast_conversion.hpp" - #include "../chaiscript_threading.hpp" +#include "bad_boxed_cast.hpp" +#include "boxed_cast_helper.hpp" +#include "boxed_value.hpp" +#include "dynamic_cast_conversion.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Dynamic_Cast_Conversions; +namespace detail { +namespace exception { +class bad_any_cast; +} // namespace exception +} // namespace detail +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/boxed_cast_helper.hpp b/include/chaiscript/dispatchkit/boxed_cast_helper.hpp index 2008de3..4b0be5b 100644 --- a/include/chaiscript/dispatchkit/boxed_cast_helper.hpp +++ b/include/chaiscript/dispatchkit/boxed_cast_helper.hpp @@ -7,8 +7,12 @@ #ifndef CHAISCRIPT_BOXED_CAST_HELPER_HPP_ #define CHAISCRIPT_BOXED_CAST_HELPER_HPP_ -#include "type_info.hpp" +#include +#include +#include + #include "boxed_value.hpp" +#include "type_info.hpp" namespace chaiscript diff --git a/include/chaiscript/dispatchkit/boxed_number.hpp b/include/chaiscript/dispatchkit/boxed_number.hpp index 92fda88..6e42bd2 100644 --- a/include/chaiscript/dispatchkit/boxed_number.hpp +++ b/include/chaiscript/dispatchkit/boxed_number.hpp @@ -7,10 +7,20 @@ #ifndef CHAISCRIPT_BOXED_NUMERIC_HPP_ #define CHAISCRIPT_BOXED_NUMERIC_HPP_ -#include "boxed_value.hpp" -#include "../language/chaiscript_algebraic.hpp" -#include #include +#include +#include + +#include "../language/chaiscript_algebraic.hpp" +#include "any.hpp" +#include "boxed_cast.hpp" +#include "boxed_cast_helper.hpp" +#include "boxed_value.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Dynamic_Cast_Conversions; +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/boxed_value.hpp b/include/chaiscript/dispatchkit/boxed_value.hpp index ee405e4..9cc7502 100644 --- a/include/chaiscript/dispatchkit/boxed_value.hpp +++ b/include/chaiscript/dispatchkit/boxed_value.hpp @@ -7,12 +7,14 @@ #ifndef CHAISCRIPT_BOXED_VALUE_HPP_ #define CHAISCRIPT_BOXED_VALUE_HPP_ -#include "type_info.hpp" +#include +#include +#include +#include #include "../chaiscript_threading.hpp" - -#include #include "any.hpp" +#include "type_info.hpp" namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/dispatchkit.hpp b/include/chaiscript/dispatchkit/dispatchkit.hpp index 305d138..2d31971 100644 --- a/include/chaiscript/dispatchkit/dispatchkit.hpp +++ b/include/chaiscript/dispatchkit/dispatchkit.hpp @@ -7,23 +7,43 @@ #ifndef CHAISCRIPT_DISPATCHKIT_HPP_ #define CHAISCRIPT_DISPATCHKIT_HPP_ -#include -#include +#include +#include +#include +#include +#include +#include #include +#include #include #include +#include +#include +#include #include -#include -#include -#include -#include -#include "boxed_value.hpp" -#include "type_info.hpp" -#include "proxy_functions.hpp" -#include "proxy_constructors.hpp" -#include "dynamic_object.hpp" +#include "../chaiscript_defines.hpp" #include "../chaiscript_threading.hpp" +#include "boxed_cast.hpp" +#include "boxed_cast_helper.hpp" +#include "boxed_value.hpp" +#include "dynamic_cast_conversion.hpp" +#include "dynamic_object.hpp" +#include "proxy_constructors.hpp" +#include "proxy_functions.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Boxed_Number; +} // namespace chaiscript + +namespace chaiscript { +namespace dispatch { +class Dynamic_Proxy_Function; +class Proxy_Function_Base; +struct Placeholder_Object; +} // namespace dispatch +} // namespace chaiscript /// \namespace chaiscript::dispatch diff --git a/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp b/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp index 5e92e59..7c46542 100644 --- a/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp +++ b/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp @@ -9,11 +9,16 @@ #include #include +#include +#include +#include +#include -#include "type_info.hpp" -#include "boxed_value.hpp" -#include "boxed_cast_helper.hpp" +#include "../chaiscript_threading.hpp" #include "bad_boxed_cast.hpp" +#include "boxed_cast_helper.hpp" +#include "boxed_value.hpp" +#include "type_info.hpp" namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/dynamic_object.hpp b/include/chaiscript/dispatchkit/dynamic_object.hpp index a61dbf1..beb1c8e 100644 --- a/include/chaiscript/dispatchkit/dynamic_object.hpp +++ b/include/chaiscript/dispatchkit/dynamic_object.hpp @@ -7,8 +7,27 @@ #ifndef CHAISCRIPT_DYNAMIC_OBJECT_HPP_ #define CHAISCRIPT_DYNAMIC_OBJECT_HPP_ +#include +#include +#include +#include +#include #include +#include +#include "../chaiscript_defines.hpp" +#include "boxed_cast.hpp" +#include "boxed_cast_helper.hpp" +#include "boxed_value.hpp" +#include "proxy_functions.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Dynamic_Cast_Conversions; +namespace dispatch { +class Proxy_Function_Base; +} // namespace dispatch +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/exception_specification.hpp b/include/chaiscript/dispatchkit/exception_specification.hpp index 5e6ebbc..4645c75 100644 --- a/include/chaiscript/dispatchkit/exception_specification.hpp +++ b/include/chaiscript/dispatchkit/exception_specification.hpp @@ -7,8 +7,18 @@ #ifndef CHAISCRIPT_EXCEPTION_SPECIFICATION_HPP_ #define CHAISCRIPT_EXCEPTION_SPECIFICATION_HPP_ +#include + +#include "../chaiscript_defines.hpp" #include "boxed_cast.hpp" +namespace chaiscript { +class Boxed_Value; +namespace exception { +class bad_boxed_cast; +} // namespace exception +} // namespace chaiscript + namespace chaiscript { namespace detail diff --git a/include/chaiscript/dispatchkit/function_call.hpp b/include/chaiscript/dispatchkit/function_call.hpp index 24b99e3..8b6c9ff 100644 --- a/include/chaiscript/dispatchkit/function_call.hpp +++ b/include/chaiscript/dispatchkit/function_call.hpp @@ -7,13 +7,22 @@ #ifndef CHAISCRIPT_FUNCTION_CALL_HPP_ #define CHAISCRIPT_FUNCTION_CALL_HPP_ +#include +#include #include #include -#include "proxy_functions.hpp" + +#include "boxed_cast.hpp" #include "function_call_detail.hpp" +#include "proxy_functions.hpp" - -#include +namespace chaiscript { +class Boxed_Value; +class Dynamic_Cast_Conversions; +namespace detail { +template struct Cast_Helper; +} // namespace detail +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/function_call_detail.hpp b/include/chaiscript/dispatchkit/function_call_detail.hpp index 484e693..e6cd465 100644 --- a/include/chaiscript/dispatchkit/function_call_detail.hpp +++ b/include/chaiscript/dispatchkit/function_call_detail.hpp @@ -7,8 +7,17 @@ #ifndef CHAISCRIPT_FUNCTION_CALL_DETAIL_HPP_ #define CHAISCRIPT_FUNCTION_CALL_DETAIL_HPP_ +#include +#include +#include #include +#include #include + +#include "boxed_cast.hpp" +#include "boxed_number.hpp" +#include "boxed_value.hpp" +#include "dynamic_cast_conversion.hpp" #include "proxy_functions.hpp" namespace chaiscript diff --git a/include/chaiscript/dispatchkit/handle_return.hpp b/include/chaiscript/dispatchkit/handle_return.hpp index 99e4cd5..cc24fdf 100644 --- a/include/chaiscript/dispatchkit/handle_return.hpp +++ b/include/chaiscript/dispatchkit/handle_return.hpp @@ -7,14 +7,20 @@ #ifndef CHAISCRIPT_HANDLE_RETURN_HPP_ #define CHAISCRIPT_HANDLE_RETURN_HPP_ -#include "boxed_value.hpp" -#include "boxed_number.hpp" -#include "type_info.hpp" -#include - +#include +#include #include +#include #include +#include "boxed_number.hpp" +#include "boxed_value.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Boxed_Number; +} // namespace chaiscript + namespace chaiscript { namespace dispatch diff --git a/include/chaiscript/dispatchkit/proxy_functions.hpp b/include/chaiscript/dispatchkit/proxy_functions.hpp index 968da2b..9a05106 100644 --- a/include/chaiscript/dispatchkit/proxy_functions.hpp +++ b/include/chaiscript/dispatchkit/proxy_functions.hpp @@ -9,14 +9,29 @@ #define CHAISCRIPT_PROXY_FUNCTIONS_HPP_ -#include "boxed_value.hpp" -#include "type_info.hpp" +#include +#include +#include +#include +#include #include #include -#include #include -#include + +#include "../chaiscript_defines.hpp" +#include "boxed_cast.hpp" +#include "boxed_cast_helper.hpp" +#include "boxed_value.hpp" #include "proxy_functions_detail.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Dynamic_Cast_Conversions; +namespace exception { +class bad_boxed_cast; +struct arity_error; +} // namespace exception +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/proxy_functions_detail.hpp b/include/chaiscript/dispatchkit/proxy_functions_detail.hpp index 2383861..139b372 100644 --- a/include/chaiscript/dispatchkit/proxy_functions_detail.hpp +++ b/include/chaiscript/dispatchkit/proxy_functions_detail.hpp @@ -7,15 +7,24 @@ #ifndef CHAISCRIPT_PROXY_FUNCTIONS_DETAIL_HPP_ #define CHAISCRIPT_PROXY_FUNCTIONS_DETAIL_HPP_ -#include "boxed_value.hpp" -#include "boxed_cast.hpp" -#include "type_info.hpp" -#include "handle_return.hpp" -#include - -#include -#include +#include #include +#include +#include +#include + +#include "../chaiscript_defines.hpp" +#include "boxed_cast.hpp" +#include "boxed_value.hpp" +#include "handle_return.hpp" +#include "type_info.hpp" + +namespace chaiscript { +class Dynamic_Cast_Conversions; +namespace exception { +class bad_boxed_cast; +} // namespace exception +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/register_function.hpp b/include/chaiscript/dispatchkit/register_function.hpp index c1993b3..987aba0 100644 --- a/include/chaiscript/dispatchkit/register_function.hpp +++ b/include/chaiscript/dispatchkit/register_function.hpp @@ -7,8 +7,12 @@ #ifndef CHAISCRIPT_REGISTER_FUNCTION_HPP_ #define CHAISCRIPT_REGISTER_FUNCTION_HPP_ -#include "dispatchkit.hpp" +#include +#include + #include "bind_first.hpp" +#include "dispatchkit.hpp" +#include "proxy_functions.hpp" namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/type_info.hpp b/include/chaiscript/dispatchkit/type_info.hpp index aef7a18..4944e80 100644 --- a/include/chaiscript/dispatchkit/type_info.hpp +++ b/include/chaiscript/dispatchkit/type_info.hpp @@ -7,10 +7,11 @@ #ifndef CHAISCRIPT_TYPE_INFO_HPP_ #define CHAISCRIPT_TYPE_INFO_HPP_ -#include -#include +#include #include +#include #include +#include namespace chaiscript { diff --git a/include/chaiscript/language/chaiscript_algebraic.hpp b/include/chaiscript/language/chaiscript_algebraic.hpp index fde79e6..71bfbfe 100644 --- a/include/chaiscript/language/chaiscript_algebraic.hpp +++ b/include/chaiscript/language/chaiscript_algebraic.hpp @@ -7,6 +7,8 @@ #ifndef CHAISCRIPT_ALGEBRAIC_HPP_ #define CHAISCRIPT_ALGEBRAIC_HPP_ +#include + #include "../dispatchkit/dispatchkit.hpp" namespace chaiscript diff --git a/include/chaiscript/language/chaiscript_common.hpp b/include/chaiscript/language/chaiscript_common.hpp index e7689c2..3762633 100644 --- a/include/chaiscript/language/chaiscript_common.hpp +++ b/include/chaiscript/language/chaiscript_common.hpp @@ -5,10 +5,24 @@ // http://www.chaiscript.com #ifndef CHAISCRIPT_COMMON_HPP_ -#define CHAISCRIPT_COMMON_HPP_ +#define CHAISCRIPT_COMMON_HPP_ +#include +#include #include +#include +#include +#include + +#include "../chaiscript_defines.hpp" +#include "../dispatchkit/boxed_value.hpp" #include "../dispatchkit/dispatchkit.hpp" +#include "../dispatchkit/proxy_functions.hpp" +#include "../dispatchkit/type_info.hpp" + +namespace chaiscript { +struct AST_Node; +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/language/chaiscript_engine.hpp b/include/chaiscript/language/chaiscript_engine.hpp index ab2d075..6491375 100644 --- a/include/chaiscript/language/chaiscript_engine.hpp +++ b/include/chaiscript/language/chaiscript_engine.hpp @@ -7,10 +7,27 @@ #ifndef CHAISCRIPT_ENGINE_HPP_ #define CHAISCRIPT_ENGINE_HPP_ +#include +#include +#include #include #include +#include +#include +#include +#include +#include +#include +#include +#include #include "../chaiscript_defines.hpp" +#include "../chaiscript_threading.hpp" +#include "../dispatchkit/boxed_cast_helper.hpp" +#include "../dispatchkit/boxed_value.hpp" +#include "../dispatchkit/dispatchkit.hpp" +#include "../dispatchkit/dynamic_cast_conversion.hpp" +#include "../dispatchkit/proxy_functions.hpp" #include "chaiscript_common.hpp" #if defined(__linux__) || defined(__unix__) || defined(__APPLE__) @@ -28,9 +45,9 @@ #endif -#include "chaiscript_prelude.chai" -#include "chaiscript_parser.hpp" #include "../dispatchkit/exception_specification.hpp" +#include "chaiscript_parser.hpp" +#include "chaiscript_prelude.chai" namespace chaiscript { diff --git a/include/chaiscript/language/chaiscript_eval.hpp b/include/chaiscript/language/chaiscript_eval.hpp index 2335430..5f353df 100644 --- a/include/chaiscript/language/chaiscript_eval.hpp +++ b/include/chaiscript/language/chaiscript_eval.hpp @@ -7,10 +7,36 @@ #ifndef CHAISCRIPT_EVAL_HPP_ #define CHAISCRIPT_EVAL_HPP_ +#include +#include +#include +#include +#include #include +#include +#include +#include +#include +#include -#include "chaiscript_common.hpp" +#include "../chaiscript_defines.hpp" +#include "../dispatchkit/boxed_cast.hpp" +#include "../dispatchkit/boxed_cast_helper.hpp" +#include "../dispatchkit/boxed_number.hpp" +#include "../dispatchkit/boxed_value.hpp" +#include "../dispatchkit/dispatchkit.hpp" +#include "../dispatchkit/proxy_functions.hpp" +#include "../dispatchkit/proxy_functions_detail.hpp" #include "../dispatchkit/register_function.hpp" +#include "../dispatchkit/type_info.hpp" +#include "chaiscript_algebraic.hpp" +#include "chaiscript_common.hpp" + +namespace chaiscript { +namespace exception { +class bad_boxed_cast; +} // namespace exception +} // namespace chaiscript namespace chaiscript { diff --git a/include/chaiscript/language/chaiscript_parser.hpp b/include/chaiscript/language/chaiscript_parser.hpp index b29b8ef..471ca8c 100644 --- a/include/chaiscript/language/chaiscript_parser.hpp +++ b/include/chaiscript/language/chaiscript_parser.hpp @@ -7,11 +7,17 @@ #ifndef CHAISCRIPT_PARSER_HPP_ #define CHAISCRIPT_PARSER_HPP_ +#include +#include #include #include +#include +#include #include -#include +#include +#include +#include "../dispatchkit/boxed_value.hpp" #include "chaiscript_common.hpp" namespace chaiscript diff --git a/include/chaiscript/utility/utility.hpp b/include/chaiscript/utility/utility.hpp index 262ae1a..c76c20d 100644 --- a/include/chaiscript/utility/utility.hpp +++ b/include/chaiscript/utility/utility.hpp @@ -7,8 +7,13 @@ #ifndef CHAISCRIPT_UTILITY_UTILITY_HPP_ #define CHAISCRIPT_UTILITY_UTILITY_HPP_ -#include "../chaiscript.hpp" #include +#include +#include + +#include "../chaiscript.hpp" +#include "../dispatchkit/proxy_functions.hpp" +#include "../dispatchkit/type_info.hpp" namespace chaiscript