├── books
├── stl.png
├── C++11特性介绍.png
├── 高性能网络服务器编程要点.mmap
├── STL Algorithm.mmap
├── STL Container.mmap
├── C++11 - 维基百科,自由的百科全书.pdf
└── 深入理解C++11:C++ 11新特性解析与应用 迷你.pdf
├── tests
├── AOP
│ ├── AOP.cpp
│ ├── AOP.vcxproj.filters
│ └── AOP.vcxproj
├── mapSort
│ ├── mapSort.cpp
│ ├── mapSort.vcxproj.filters
│ └── mapSort.vcxproj
├── Observer
│ ├── Observer.cpp
│ ├── Observer.vcxproj.filters
│ └── Observer.vcxproj
├── PrintArgs
│ ├── PrintArgs.cpp
│ ├── PrintArgs.vcxproj.filters
│ └── PrintArgs.vcxproj
└── ComposeFunctor
│ ├── ComposeFunctorTest.cpp
│ ├── ComposeFunctor.vcxproj.filters
│ └── ComposeFunctor.vcxproj
├── tools
├── src
│ ├── JobQueue.h
│ ├── range.hpp
│ ├── ScopeGuard.h
│ ├── safe_printf.hpp
│ └── check_is_class.hpp
├── SFINAE_Test
│ ├── SFINAE_Test.cpp
│ ├── CheckClassMethod.hpp
│ ├── SFINAE_Test.vcxproj.filters
│ └── SFINAE_Test.vcxproj
├── ScopeGuard
│ ├── ScopeGuard_Test.cpp
│ └── ScopeGuard.vcxproj.filters
├── threadsafe_lookuptable
│ ├── threadsafe_lookuptable.h
│ ├── threadsafe_lookuptable_test.cpp
│ └── threadsafe_lookuptable.vcxproj.filters
├── range
│ ├── range.vcxproj.filters
│ └── range_test.cpp
├── safe_printf
│ ├── safe_printf.vcxproj.filters
│ └── test_safe_printf.cpp
├── check_is_class
│ ├── test_check_is_class.cpp
│ └── check_is_class.vcxproj.filters
└── JobQueue
│ ├── JobQueue.vcxproj.filters
│ └── test_job_queue.cpp
├── stl
├── src
│ ├── algorithm_sort.cpp
│ ├── container_sequence.cpp
│ ├── algorithm_find_search_compare.cpp
│ ├── algorithm_create_update_delete.cpp
│ └── algorithm_heap_set_permutation.cpp
├── algorithm_sort
│ ├── algorithm_sort.vcxproj.filters
│ └── algorithm_sort.vcxproj
├── container_sequence
│ ├── container_sequence.vcxproj.filters
│ └── container_sequence.vcxproj
├── algorithm_find_search_compare
│ └── algorithm_find_compare.vcxproj.filters
├── algorithm_create_update_delete
│ ├── algorithm_create_update_delete.vcxproj.filters
│ └── algorithm_create_update_delete.vcxproj
└── algorithm_heap_set_permutation
│ ├── algorithm_heap_set_permutation.vcxproj.filters
│ └── algorithm_heap_set_permutation.vcxproj
├── cereal_test
├── cereal_test.cpp
└── cereal_test.vcxproj.filters
├── std_components
├── src
│ └── std_time.cpp
└── std_time
│ ├── std_time.vcxproj.filters
│ └── std_time.vcxproj
├── cpp11features
├── threads
│ ├── threads.cpp
│ ├── threads.vcxproj.filters
│ └── threads.vcxproj
├── decltype
│ ├── decltype.cpp
│ ├── decltype.vcxproj.filters
│ └── decltype.vcxproj
├── enum_union
│ ├── enum_union.cpp
│ ├── enum_union.vcxproj.filters
│ └── enum_union.vcxproj
├── lambda_test
│ ├── lambda_test.cpp
│ ├── lambda_test.vcxproj.filters
│ └── lambda_test.vcxproj
├── regex_test
│ ├── regex_test.cpp
│ ├── regex_test.vcxproj.filters
│ └── regex_test.vcxproj
├── tuple_test
│ ├── tuple_test.cpp
│ ├── tuple_test.vcxproj.filters
│ └── tuple_test.vcxproj
├── delete_default
│ ├── delete_default.cpp
│ ├── delete_default.vcxproj.filters
│ └── delete_default.vcxproj
├── overrides_final
│ ├── overrides_final.cpp
│ ├── overrides_final.vcxproj.filters
│ └── overrides_final.vcxproj
├── right_value_ref
│ ├── right_value_ref.cpp
│ ├── right_value_ref.vcxproj.filters
│ └── right_value_ref.vcxproj
├── using_and_so_on
│ ├── using_and_so_on.cpp
│ ├── using_and_so_on.vcxproj.filters
│ └── using_and_so_on.vcxproj
├── constexpr_nullptr
│ ├── constexpr_nullptr.cpp
│ ├── constexpr_nullptr.vcxproj.filters
│ └── constexpr_nullptr.vcxproj
├── unordered_set_map
│ ├── unordered_set_map.cpp
│ ├── unordered_set_map.vcxproj.filters
│ └── unordered_set_map.vcxproj
├── variadic_templates
│ ├── variadic_templates.cpp
│ ├── variadic_templates.vcxproj.filters
│ └── variadic_templates.vcxproj
├── initialization_list
│ ├── initialization_list.cpp
│ ├── initialization_list.vcxproj.filters
│ └── initialization_list.vcxproj
└── object_construction
│ ├── object_construction.cpp
│ ├── object_construction.vcxproj.filters
│ └── object_construction.vcxproj
├── .gitignore
├── 3rdparty
└── cereal
│ ├── external
│ ├── rapidjson
│ │ ├── internal
│ │ │ ├── strfunc.h
│ │ │ └── stack.h
│ │ ├── license.txt
│ │ ├── filestream.h
│ │ ├── stringbuffer.h
│ │ └── genericstream.h
│ └── rapidxml
│ │ ├── license.txt
│ │ └── rapidxml_utils.hpp
│ ├── types
│ ├── utility.hpp
│ ├── complex.hpp
│ ├── list.hpp
│ ├── deque.hpp
│ ├── tuple.hpp
│ ├── chrono.hpp
│ ├── forward_list.hpp
│ ├── string.hpp
│ ├── stack.hpp
│ ├── array.hpp
│ ├── set.hpp
│ ├── unordered_set.hpp
│ ├── bitset.hpp
│ ├── unordered_map.hpp
│ └── map.hpp
│ └── details
│ ├── static_object.hpp
│ └── util.hpp
├── utility
└── daemon_test
│ └── daemon_test.vcxproj.filters
├── README.md
└── LICENSE
/books/stl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/stl.png
--------------------------------------------------------------------------------
/tests/AOP/AOP.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tests/AOP/AOP.cpp
--------------------------------------------------------------------------------
/books/C++11特性介绍.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/C++11特性介绍.png
--------------------------------------------------------------------------------
/tools/src/JobQueue.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/src/JobQueue.h
--------------------------------------------------------------------------------
/tools/src/range.hpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/src/range.hpp
--------------------------------------------------------------------------------
/books/高性能网络服务器编程要点.mmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/高性能网络服务器编程要点.mmap
--------------------------------------------------------------------------------
/tools/src/ScopeGuard.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/src/ScopeGuard.h
--------------------------------------------------------------------------------
/books/STL Algorithm.mmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/STL Algorithm.mmap
--------------------------------------------------------------------------------
/books/STL Container.mmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/STL Container.mmap
--------------------------------------------------------------------------------
/stl/src/algorithm_sort.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/stl/src/algorithm_sort.cpp
--------------------------------------------------------------------------------
/tests/mapSort/mapSort.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tests/mapSort/mapSort.cpp
--------------------------------------------------------------------------------
/tools/src/safe_printf.hpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/src/safe_printf.hpp
--------------------------------------------------------------------------------
/cereal_test/cereal_test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cereal_test/cereal_test.cpp
--------------------------------------------------------------------------------
/tests/Observer/Observer.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tests/Observer/Observer.cpp
--------------------------------------------------------------------------------
/books/C++11 - 维基百科,自由的百科全书.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/C++11 - 维基百科,自由的百科全书.pdf
--------------------------------------------------------------------------------
/std_components/src/std_time.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/std_components/src/std_time.cpp
--------------------------------------------------------------------------------
/stl/src/container_sequence.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/stl/src/container_sequence.cpp
--------------------------------------------------------------------------------
/tests/PrintArgs/PrintArgs.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tests/PrintArgs/PrintArgs.cpp
--------------------------------------------------------------------------------
/cpp11features/threads/threads.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/threads/threads.cpp
--------------------------------------------------------------------------------
/tools/SFINAE_Test/SFINAE_Test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/SFINAE_Test/SFINAE_Test.cpp
--------------------------------------------------------------------------------
/cpp11features/decltype/decltype.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/decltype/decltype.cpp
--------------------------------------------------------------------------------
/tools/ScopeGuard/ScopeGuard_Test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/ScopeGuard/ScopeGuard_Test.cpp
--------------------------------------------------------------------------------
/books/深入理解C++11:C++ 11新特性解析与应用 迷你.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/books/深入理解C++11:C++ 11新特性解析与应用 迷你.pdf
--------------------------------------------------------------------------------
/tools/SFINAE_Test/CheckClassMethod.hpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/SFINAE_Test/CheckClassMethod.hpp
--------------------------------------------------------------------------------
/cpp11features/enum_union/enum_union.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/enum_union/enum_union.cpp
--------------------------------------------------------------------------------
/cpp11features/lambda_test/lambda_test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/lambda_test/lambda_test.cpp
--------------------------------------------------------------------------------
/cpp11features/regex_test/regex_test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/regex_test/regex_test.cpp
--------------------------------------------------------------------------------
/cpp11features/tuple_test/tuple_test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/tuple_test/tuple_test.cpp
--------------------------------------------------------------------------------
/stl/src/algorithm_find_search_compare.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/stl/src/algorithm_find_search_compare.cpp
--------------------------------------------------------------------------------
/stl/src/algorithm_create_update_delete.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/stl/src/algorithm_create_update_delete.cpp
--------------------------------------------------------------------------------
/stl/src/algorithm_heap_set_permutation.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/stl/src/algorithm_heap_set_permutation.cpp
--------------------------------------------------------------------------------
/tests/ComposeFunctor/ComposeFunctorTest.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tests/ComposeFunctor/ComposeFunctorTest.cpp
--------------------------------------------------------------------------------
/cpp11features/delete_default/delete_default.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/delete_default/delete_default.cpp
--------------------------------------------------------------------------------
/cpp11features/overrides_final/overrides_final.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/overrides_final/overrides_final.cpp
--------------------------------------------------------------------------------
/cpp11features/right_value_ref/right_value_ref.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/right_value_ref/right_value_ref.cpp
--------------------------------------------------------------------------------
/cpp11features/using_and_so_on/using_and_so_on.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/using_and_so_on/using_and_so_on.cpp
--------------------------------------------------------------------------------
/cpp11features/constexpr_nullptr/constexpr_nullptr.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/constexpr_nullptr/constexpr_nullptr.cpp
--------------------------------------------------------------------------------
/cpp11features/unordered_set_map/unordered_set_map.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/unordered_set_map/unordered_set_map.cpp
--------------------------------------------------------------------------------
/tools/threadsafe_lookuptable/threadsafe_lookuptable.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/threadsafe_lookuptable/threadsafe_lookuptable.h
--------------------------------------------------------------------------------
/cpp11features/variadic_templates/variadic_templates.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/variadic_templates/variadic_templates.cpp
--------------------------------------------------------------------------------
/cpp11features/initialization_list/initialization_list.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/initialization_list/initialization_list.cpp
--------------------------------------------------------------------------------
/cpp11features/object_construction/object_construction.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/cpp11features/object_construction/object_construction.cpp
--------------------------------------------------------------------------------
/tools/threadsafe_lookuptable/threadsafe_lookuptable_test.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lizhenghn123/myCpp11Study/HEAD/tools/threadsafe_lookuptable/threadsafe_lookuptable_test.cpp
--------------------------------------------------------------------------------
/tests/AOP/AOP.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/tests/Observer/Observer.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/tests/mapSort/mapSort.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/threads/threads.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/tests/PrintArgs/PrintArgs.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/decltype/decltype.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/enum_union/enum_union.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/regex_test/regex_test.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/tuple_test/tuple_test.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/lambda_test/lambda_test.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files
2 | *.slo
3 | *.lo
4 | *.o
5 | *.obj
6 |
7 | # Compiled Dynamic libraries
8 | *.so
9 | *.dylib
10 | *.dll
11 |
12 | # Compiled Static libraries
13 | *.lai
14 | *.la
15 | *.a
16 | *.lib
17 |
18 | # Executables
19 | *.exe
20 | *.out
21 | *.app
22 |
--------------------------------------------------------------------------------
/cpp11features/delete_default/delete_default.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/tests/ComposeFunctor/ComposeFunctor.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/overrides_final/overrides_final.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/right_value_ref/right_value_ref.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/using_and_so_on/using_and_so_on.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/constexpr_nullptr/constexpr_nullptr.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/unordered_set_map/unordered_set_map.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/initialization_list/initialization_list.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/object_construction/object_construction.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cpp11features/variadic_templates/variadic_templates.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/tools/range/range.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/tools/SFINAE_Test/SFINAE_Test.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/tools/ScopeGuard/ScopeGuard.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/tools/safe_printf/safe_printf.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/tools/threadsafe_lookuptable/threadsafe_lookuptable.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/tools/safe_printf/test_safe_printf.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include "safe_printf.hpp"
4 | using namespace std;
5 |
6 | void test_safe_printf()
7 | {
8 | ZL::safe_printf("Hello World\n");
9 | ZL::safe_printf("My name is %s, age is %d, live in %s\n", "lizheng", 26, "Beijing");
10 |
11 | std::string str = __FILE__;
12 | ZL::safe_printf("This file is %s\n", str.c_str());
13 | }
14 |
15 |
16 | int main()
17 | {
18 | test_safe_printf();
19 |
20 | system("pause");
21 | return 0;
22 | }
--------------------------------------------------------------------------------
/tools/check_is_class/test_check_is_class.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include "check_is_class.hpp"
4 | using namespace std;
5 |
6 | class T1
7 | {
8 | int i;
9 | };
10 | struct T2
11 | {
12 |
13 |
14 | };
15 |
16 | void test_check_is_class()
17 | {
18 | std::cout << std::is_class::value << "\t" << std::is_class::value << "\t"
19 | << std::is_class::value << "\t" << std::is_class::value << "\n";
20 |
21 | std::cout << ZL::is_class::value << "\t" << ZL::is_class::value << "\t"
22 | << ZL::is_class::value << "\t" << ZL::is_class::value << "\n";
23 | }
24 |
25 | int main()
26 | {
27 | test_check_is_class();
28 |
29 | system("pause");
30 | return 0;
31 | }
32 |
33 |
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidjson/internal/strfunc.h:
--------------------------------------------------------------------------------
1 | #ifndef RAPIDJSON_INTERNAL_STRFUNC_H_
2 | #define RAPIDJSON_INTERNAL_STRFUNC_H_
3 |
4 | namespace rapidjson {
5 | namespace internal {
6 |
7 | //! Custom strlen() which works on different character types.
8 | /*! \tparam Ch Character type (e.g. char, wchar_t, short)
9 | \param s Null-terminated input string.
10 | \return Number of characters in the string.
11 | \note This has the same semantics as strlen(), the return value is not number of Unicode codepoints.
12 | */
13 | template
14 | inline SizeType StrLen(const Ch* s) {
15 | const Ch* p = s;
16 | while (*p != '\0')
17 | ++p;
18 | return SizeType(p - s);
19 | }
20 |
21 | } // namespace internal
22 | } // namespace rapidjson
23 |
24 | #endif // RAPIDJSON_INTERNAL_STRFUNC_H_
25 |
--------------------------------------------------------------------------------
/tools/src/check_is_class.hpp:
--------------------------------------------------------------------------------
1 | // ***********************************************************************
2 | // Filename : check_is_class.hpp
3 | // Author : LIZHENG
4 | // Created : 2014-06-09
5 | // Description : 判断一个类型是否是类类型,注意,std::is_class即是该功能
6 | //
7 | // Last Modified By : LIZHENG
8 | // Last Modified On : 2014-06-09
9 | //
10 | // Copyright (c) lizhenghn@gmail.com. All rights reserved.
11 | // ***********************************************************************
12 | #ifndef ZL_CHECKISCLASS_H
13 | #define ZL_CHECKISCLASS_H
14 |
15 | namespace ZL
16 | {
17 | template
18 | class is_class
19 | {
20 | typedef char YES;
21 | typedef struct { char a[2]; } NO;
22 |
23 | template
24 | static YES test_t(int C::*);
25 |
26 | template
27 | static NO test_t(...);
28 | public:
29 | enum { value = sizeof(test_t(0)) == sizeof(YES) };
30 | };
31 |
32 | } /* namespace ZL */
33 |
34 | #endif /* ZL_CHECKISCLASS_H */
35 |
--------------------------------------------------------------------------------
/cereal_test/cereal_test.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/std_components/std_time/std_time.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/utility/daemon_test/daemon_test.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/stl/algorithm_sort/algorithm_sort.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/stl/container_sequence/container_sequence.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/stl/algorithm_find_search_compare/algorithm_find_compare.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/stl/algorithm_create_update_delete/algorithm_create_update_delete.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/stl/algorithm_heap_set_permutation/algorithm_heap_set_permutation.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | myCpp11Study
2 | ============
3 |
4 | 我的C++11学习资料和示例代码
5 | # C++11特性
6 | 3. 2014-06-03 增加右值引用的测试;
7 | 4. 2014-06-04 增加decltype使用测试;
8 | 5. 2014-06-04 增加initialization_list使用测试;
9 | 6. 2014-06-04 增加强类型enum和无限制union使用测试;
10 | 7. 2014-06-05 显式使用或禁用特定的成员函数;
11 | 8. 2014-06-05 显式重载和 Final 操作符;
12 | 9. 2014-06-06 constexpr、nullptr使用测试;
13 | 10. 2014-06-06 对象构造改良测试;
14 | 11. 2014-06-06 **线程、同步、条件变量**测试;
15 | 12. 2014-06-06 **lambda**测试;
16 | 13. 2014-06-06 **正则表达式**测试;
17 | 14. 2014-06-06 **变长模板参数**测试;
18 | 15. 2014-06-07 增加hash_tables测试;
19 | 16. 2014-06-07 using、模板别名等测试;
20 | 17. 2014-06-10 增加几个工具类(**RAII类,同步队列类**)
21 | 18. 2014-06-12 增加STL中几种查找算法的使用
22 | 19. 2014-06-14 增加STL中堆操作、集合操作、排列操作等算法
23 | 20. 2014-06-14 增加STL中排序算法的测试
24 | 21. 2014-06-14 增加STL中修改型算法的测试
25 | 22. 2014-06-15 增加STL中容器、算法的思维导图
26 | 23. 2014-06-15 增加forward_list和array容器测试(C++11新增容器)
27 | 24. 2014-08-16 增加字符串辅助函数集
28 |
29 | # 利用C++11编写工具
30 | 1. 2014-06-01 增加[cereal](http://uscilab.github.io/cereal/index.html)库:开源、轻量级、支持C++11特性、仅包含头文件实现、跨平台的序列化库;
31 | 2. 2014-06-01 增加对cereal的测试代码;
32 |
33 | ****
34 | lizhenghn@gmail.com
35 |
36 | 2014-06-01
37 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014 lizheng
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidjson/license.txt:
--------------------------------------------------------------------------------
1 | Copyright (C) 2011 Milo Yip
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidjson/filestream.h:
--------------------------------------------------------------------------------
1 | #ifndef RAPIDJSON_FILESTREAM_H_
2 | #define RAPIDJSON_FILESTREAM_H_
3 |
4 | #include
5 |
6 | namespace rapidjson {
7 |
8 | //! Wrapper of C file stream for input or output.
9 | /*!
10 | This simple wrapper does not check the validity of the stream.
11 | \implements Stream
12 | */
13 | class FileStream {
14 | public:
15 | typedef char Ch; //!< Character type. Only support char.
16 |
17 | FileStream(FILE* fp) : fp_(fp), count_(0) { Read(); }
18 |
19 | char Peek() const { return current_; }
20 | char Take() { char c = current_; Read(); return c; }
21 | size_t Tell() const { return count_; }
22 | void Put(char c) { fputc(c, fp_); }
23 |
24 | // Not implemented
25 | char* PutBegin() { return 0; }
26 | size_t PutEnd(char*) { return 0; }
27 |
28 | private:
29 | void Read() {
30 | RAPIDJSON_ASSERT(fp_ != 0);
31 | int c = fgetc(fp_);
32 | if (c != EOF) {
33 | current_ = (char)c;
34 | count_++;
35 | }
36 | else
37 | current_ = '\0';
38 | }
39 |
40 | FILE* fp_;
41 | char current_;
42 | size_t count_;
43 | };
44 |
45 | } // namespace rapidjson
46 |
47 | #endif // RAPIDJSON_FILESTREAM_H_
48 |
--------------------------------------------------------------------------------
/tools/JobQueue/JobQueue.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
23 |
24 | Header Files
25 |
26 |
27 |
--------------------------------------------------------------------------------
/tools/check_is_class/check_is_class.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
23 |
24 | Header Files
25 |
26 |
27 |
--------------------------------------------------------------------------------
/tools/JobQueue/test_job_queue.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include "JobQueue.h"
4 | using namespace std;
5 |
6 |
7 | void test_ojb_queue()
8 | {
9 | {
10 | ZL::JobQueue queue;
11 | queue.Push(1);
12 | queue.Push(3);
13 | queue.Push(2);
14 | queue.Push(0);
15 |
16 | int p = -1;
17 | while (true)
18 | {
19 | if (queue.TryPop(p))
20 | std::cout << p << "\n";
21 | else
22 | break;
23 | }
24 | std::cout << "================\n";
25 | }
26 | {
27 | ZL::FiloJobQueue queue;
28 | queue.Push(1);
29 | queue.Push(3);
30 | queue.Push(2);
31 | queue.Push(0);
32 |
33 | int p = -1;
34 | while (true)
35 | {
36 | if (queue.TryPop(p))
37 | std::cout << p << "\n";
38 | else
39 | break;
40 | }
41 | std::cout << "================\n";
42 | }
43 | {
44 | //ZL::JobQueue, ZL::tagPRIO > queue;
45 | ZL::PrioJobQueue queue;
46 | queue.Push(1);
47 | queue.Push(3);
48 | queue.Push(2);
49 | queue.Push(0);
50 |
51 | int p = -1;
52 | while (true)
53 | {
54 | if (queue.TryPop(p))
55 | std::cout << p << "\n";
56 | else
57 | break;
58 | }
59 | std::cout << "================\n";
60 | }
61 | }
62 |
63 | int main()
64 | {
65 | test_ojb_queue();
66 |
67 | std::cout << "OK\n";
68 | getchar();
69 | return 0;
70 | }
--------------------------------------------------------------------------------
/tools/range/range_test.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include "range.hpp"
3 | using namespace std;
4 |
5 | void test_range()
6 | {
7 | cout << "Range(15):";
8 | for (auto i : Range(15)){
9 | cout << " " << i; // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
10 | }
11 | cout << endl;
12 |
13 | cout << "Range(2,6):";
14 | for (auto i : Range(2, 6)){
15 | cout << " " << i; // 2 3 4 5
16 | }
17 | cout << endl;
18 |
19 | cout << "Range(10.5, 15.5):";
20 | for (float i : Range(10.5, 15.5)){
21 | cout << " " << i; // 10.5 11.5 12.5 13.5 14.5
22 | }
23 | cout << endl;
24 |
25 | cout << "Range(35,27,-1):";
26 | for (int i : Range(35, 27, -1)){
27 | cout << " " << i; // 35 34 33 32 31 30 29 28
28 | }
29 | cout << endl;
30 |
31 | cout << "Range(2,8,0.5):";
32 | for (float i : Range(2, 8, 0.5)){
33 | cout << " " << i; // 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5
34 | }
35 | cout << endl;
36 |
37 | cout << "Range(8,7,-0.1):";
38 | for (auto i : Range(8, 7, -0.1)){
39 | cout << " " << i; // 8 7.9 7.8 7.7 7.6 7.5 7.4 7.3 7.2 7.1
40 | }
41 | cout << endl;
42 |
43 | cout << "Range('a', 'z'):";
44 | for (auto i : Range('a', 'z'))
45 | {
46 | cout << " " << i; // a b c d e f g h i j k l m n o p q r s t u v w x y
47 | }
48 | cout << endl;
49 | }
50 |
51 | int main()
52 | {
53 | test_range();
54 |
55 | system("pause");
56 | return 0;
57 | }
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidjson/stringbuffer.h:
--------------------------------------------------------------------------------
1 | #ifndef RAPIDJSON_STRINGBUFFER_H_
2 | #define RAPIDJSON_STRINGBUFFER_H_
3 |
4 | #include "rapidjson.h"
5 | #include "internal/stack.h"
6 |
7 | namespace rapidjson {
8 |
9 | //! Represents an in-memory output stream.
10 | /*!
11 | \tparam Encoding Encoding of the stream.
12 | \tparam Allocator type for allocating memory buffer.
13 | \implements Stream
14 | */
15 | template
16 | struct GenericStringBuffer {
17 | typedef typename Encoding::Ch Ch;
18 |
19 | GenericStringBuffer(Allocator* allocator = 0, size_t capacity = kDefaultCapacity) : stack_(allocator, capacity) {}
20 |
21 | void Put(Ch c) { *stack_.template Push() = c; }
22 |
23 | void Clear() { stack_.Clear(); }
24 |
25 | const char* GetString() const {
26 | // Push and pop a null terminator. This is safe.
27 | *stack_.template Push() = '\0';
28 | stack_.template Pop(1);
29 |
30 | return stack_.template Bottom();
31 | }
32 |
33 | size_t Size() const { return stack_.GetSize(); }
34 |
35 | static const size_t kDefaultCapacity = 256;
36 | mutable internal::Stack stack_;
37 | };
38 |
39 | typedef GenericStringBuffer > StringBuffer;
40 |
41 | //! Implement specialized version of PutN() with memset() for better performance.
42 | template<>
43 | inline void PutN(GenericStringBuffer >& stream, char c, size_t n) {
44 | memset(stream.stack_.Push(n), c, n * sizeof(c));
45 | }
46 |
47 | } // namespace rapidjson
48 |
49 | #endif // RAPIDJSON_STRINGBUFFER_H_
50 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/utility.hpp:
--------------------------------------------------------------------------------
1 | /*! \file utility.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_UTILITY_HPP_
31 | #define CEREAL_TYPES_UTILITY_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | //! Serializing for std::pair
39 | template inline
40 | void serialize( Archive & ar, std::pair & pair )
41 | {
42 | ar( _CEREAL_NVP("first", pair.first),
43 | _CEREAL_NVP("second", pair.second) );
44 | }
45 | } // namespace cereal
46 |
47 | #endif // CEREAL_TYPES_UTILITY_HPP_
48 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/complex.hpp:
--------------------------------------------------------------------------------
1 | /*! \file complex.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_COMPLEX_HPP_
31 | #define CEREAL_TYPES_COMPLEX_HPP_
32 |
33 | #include
34 |
35 | namespace cereal
36 | {
37 | //! Serializing (save) for std::complex
38 | template inline
39 | void save( Archive & ar, std::complex const & comp )
40 | {
41 | ar( _CEREAL_NVP("real", comp.real()),
42 | _CEREAL_NVP("imag", comp.imag()) );
43 | }
44 |
45 | //! Serializing (load) for std::complex
46 | template inline
47 | void load( Archive & ar, std::complex & bits )
48 | {
49 | T real, imag;
50 | ar( _CEREAL_NVP("real", real),
51 | _CEREAL_NVP("imag", imag) );
52 | bits = {real, imag};
53 | }
54 | } // namespace cereal
55 |
56 | #endif // CEREAL_TYPES_COMPLEX_HPP_
57 |
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidjson/genericstream.h:
--------------------------------------------------------------------------------
1 | // Generic*Stream code from https://code.google.com/p/rapidjson/issues/detail?id=20
2 | #ifndef RAPIDJSON_GENERICSTREAM_H_
3 | #define RAPIDJSON_GENERICSTREAM_H_
4 |
5 | #include "rapidjson.h"
6 | #include
7 |
8 | namespace rapidjson {
9 |
10 | //! Wrapper of std::istream for input.
11 | class GenericReadStream {
12 | public:
13 | typedef char Ch; //!< Character type (byte).
14 |
15 | //! Constructor.
16 | /*!
17 | \param is Input stream.
18 | */
19 | GenericReadStream(std::istream & is) : is_(&is) {
20 | }
21 |
22 |
23 | Ch Peek() const {
24 | if(is_->eof()) return '\0';
25 | return static_cast(is_->peek());
26 | }
27 |
28 | Ch Take() {
29 | if(is_->eof()) return '\0';
30 | return static_cast(is_->get());
31 | }
32 |
33 | size_t Tell() const {
34 | return (int)is_->tellg();
35 | }
36 |
37 | // Not implemented
38 | void Put(Ch) { RAPIDJSON_ASSERT(false); }
39 | void Flush() { RAPIDJSON_ASSERT(false); }
40 | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
41 | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
42 |
43 | std::istream * is_;
44 | };
45 |
46 |
47 | //! Wrapper of std::ostream for output.
48 | class GenericWriteStream {
49 | public:
50 | typedef char Ch; //!< Character type. Only support char.
51 |
52 | //! Constructor
53 | /*!
54 | \param os Output stream.
55 | */
56 | GenericWriteStream(std::ostream& os) : os_(os) {
57 | }
58 |
59 | void Put(char c) {
60 | os_.put(c);
61 | }
62 |
63 | void PutN(char c, size_t n) {
64 | for (size_t i = 0; i < n; ++i) {
65 | Put(c);
66 | }
67 | }
68 |
69 | void Flush() {
70 | os_.flush();
71 | }
72 |
73 | size_t Tell() const {
74 | return (int)os_.tellp();
75 | }
76 |
77 | // Not implemented
78 | char Peek() const { RAPIDJSON_ASSERT(false); }
79 | char Take() { RAPIDJSON_ASSERT(false); }
80 | char* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
81 | size_t PutEnd(char*) { RAPIDJSON_ASSERT(false); return 0; }
82 |
83 | private:
84 | std::ostream& os_;
85 | };
86 |
87 | template<>
88 | inline void PutN(GenericWriteStream& stream, char c, size_t n) {
89 | stream.PutN(c, n);
90 | }
91 |
92 | } // namespace rapidjson
93 |
94 | #endif // RAPIDJSON_GENERICSTREAM_H_
95 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/list.hpp:
--------------------------------------------------------------------------------
1 | /*! \file list.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_LIST_HPP_
31 | #define CEREAL_TYPES_LIST_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | //! Saving for std::list
39 | template inline
40 | void save( Archive & ar, std::list const & list )
41 | {
42 | ar( make_size_tag( static_cast(list.size()) ) );
43 |
44 | for( auto const & i : list )
45 | ar( i );
46 | }
47 |
48 | //! Loading for std::list
49 | template inline
50 | void load( Archive & ar, std::list & list )
51 | {
52 | size_type size;
53 | ar( make_size_tag( size ) );
54 |
55 | list.resize( static_cast( size ) );
56 |
57 | for( auto & i : list )
58 | ar( i );
59 | }
60 | } // namespace cereal
61 |
62 | #endif // CEREAL_TYPES_LIST_HPP_
63 |
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidjson/internal/stack.h:
--------------------------------------------------------------------------------
1 | #ifndef RAPIDJSON_INTERNAL_STACK_H_
2 | #define RAPIDJSON_INTERNAL_STACK_H_
3 |
4 | namespace rapidjson {
5 | namespace internal {
6 |
7 | ///////////////////////////////////////////////////////////////////////////////
8 | // Stack
9 |
10 | //! A type-unsafe stack for storing different types of data.
11 | /*! \tparam Allocator Allocator for allocating stack memory.
12 | */
13 | template
14 | class Stack {
15 | public:
16 | Stack(Allocator* allocator, size_t stack_capacity) : allocator_(allocator), own_allocator_(0), stack_(0), stack_top_(0), stack_end_(0), stack_capacity_(stack_capacity) {
17 | RAPIDJSON_ASSERT(stack_capacity_ > 0);
18 | if (!allocator_)
19 | own_allocator_ = allocator_ = new Allocator();
20 | stack_top_ = stack_ = (char*)allocator_->Malloc(stack_capacity_);
21 | stack_end_ = stack_ + stack_capacity_;
22 | }
23 |
24 | ~Stack() {
25 | Allocator::Free(stack_);
26 | delete own_allocator_; // Only delete if it is owned by the stack
27 | }
28 |
29 | void Clear() { /*stack_top_ = 0;*/ stack_top_ = stack_; }
30 |
31 | template
32 | T* Push(size_t count = 1) {
33 | // Expand the stack if needed
34 | if (stack_top_ + sizeof(T) * count >= stack_end_) {
35 | size_t new_capacity = stack_capacity_ * 2;
36 | size_t size = GetSize();
37 | size_t new_size = GetSize() + sizeof(T) * count;
38 | if (new_capacity < new_size)
39 | new_capacity = new_size;
40 | stack_ = (char*)allocator_->Realloc(stack_, stack_capacity_, new_capacity);
41 | stack_capacity_ = new_capacity;
42 | stack_top_ = stack_ + size;
43 | stack_end_ = stack_ + stack_capacity_;
44 | }
45 | T* ret = (T*)stack_top_;
46 | stack_top_ += sizeof(T) * count;
47 | return ret;
48 | }
49 |
50 | template
51 | T* Pop(size_t count) {
52 | RAPIDJSON_ASSERT(GetSize() >= count * sizeof(T));
53 | stack_top_ -= count * sizeof(T);
54 | return (T*)stack_top_;
55 | }
56 |
57 | template
58 | T* Top() {
59 | RAPIDJSON_ASSERT(GetSize() >= sizeof(T));
60 | return (T*)(stack_top_ - sizeof(T));
61 | }
62 |
63 | template
64 | T* Bottom() { return (T*)stack_; }
65 |
66 | Allocator& GetAllocator() { return *allocator_; }
67 | size_t GetSize() const { return stack_top_ - stack_; }
68 | size_t GetCapacity() const { return stack_capacity_; }
69 |
70 | private:
71 | Allocator* allocator_;
72 | Allocator* own_allocator_;
73 | char *stack_;
74 | char *stack_top_;
75 | char *stack_end_;
76 | size_t stack_capacity_;
77 | };
78 |
79 | } // namespace internal
80 | } // namespace rapidjson
81 |
82 | #endif // RAPIDJSON_STACK_H_
83 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/deque.hpp:
--------------------------------------------------------------------------------
1 | /*! \file deque.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_DEQUE_HPP_
31 | #define CEREAL_TYPES_DEQUE_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | //! Saving for std::deque
39 | template inline
40 | void save( Archive & ar, std::deque const & deque )
41 | {
42 | ar( make_size_tag( static_cast(deque.size()) ) );
43 |
44 | for( auto const & i : deque )
45 | ar( i );
46 | }
47 |
48 | //! Loading for std::deque
49 | template inline
50 | void load( Archive & ar, std::deque & deque )
51 | {
52 | size_type size;
53 | ar( make_size_tag( size ) );
54 |
55 | deque.resize( static_cast( size ) );
56 |
57 | for( auto & i : deque )
58 | ar( i );
59 | }
60 | } // namespace cereal
61 |
62 | #endif // CEREAL_TYPES_DEQUE_HPP_
63 |
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidxml/license.txt:
--------------------------------------------------------------------------------
1 | Use of this software is granted under one of the following two licenses,
2 | to be chosen freely by the user.
3 |
4 | 1. Boost Software License - Version 1.0 - August 17th, 2003
5 | ===============================================================================
6 |
7 | Copyright (c) 2006, 2007 Marcin Kalicinski
8 |
9 | Permission is hereby granted, free of charge, to any person or organization
10 | obtaining a copy of the software and accompanying documentation covered by
11 | this license (the "Software") to use, reproduce, display, distribute,
12 | execute, and transmit the Software, and to prepare derivative works of the
13 | Software, and to permit third-parties to whom the Software is furnished to
14 | do so, all subject to the following:
15 |
16 | The copyright notices in the Software and this entire statement, including
17 | the above license grant, this restriction and the following disclaimer,
18 | must be included in all copies of the Software, in whole or in part, and
19 | all derivative works of the Software, unless such copies or derivative
20 | works are solely in the form of machine-executable object code generated by
21 | a source language processor.
22 |
23 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25 | FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
26 | SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
27 | FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
28 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
29 | DEALINGS IN THE SOFTWARE.
30 |
31 | 2. The MIT License
32 | ===============================================================================
33 |
34 | Copyright (c) 2006, 2007 Marcin Kalicinski
35 |
36 | Permission is hereby granted, free of charge, to any person obtaining a copy
37 | of this software and associated documentation files (the "Software"), to deal
38 | in the Software without restriction, including without limitation the rights
39 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
40 | of the Software, and to permit persons to whom the Software is furnished to do so,
41 | subject to the following conditions:
42 |
43 | The above copyright notice and this permission notice shall be included in all
44 | copies or substantial portions of the Software.
45 |
46 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
47 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
48 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
49 | THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
50 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
51 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
52 | IN THE SOFTWARE.
53 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/tuple.hpp:
--------------------------------------------------------------------------------
1 | /*! \file tuple.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_TUPLE_HPP_
31 | #define CEREAL_TYPES_TUPLE_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | namespace tuple_detail
39 | {
40 | // unwinds a tuple to save it
41 | //! @internal
42 | template
43 | struct serialize
44 | {
45 | template inline
46 | static void apply( Archive & ar, std::tuple & tuple )
47 | {
48 | ar( _CEREAL_NVP("tuple_element", std::get( tuple )) );
49 | serialize::template apply( ar, tuple );
50 | }
51 | };
52 |
53 | // Zero height specialization - nothing to do here
54 | //! @internal
55 | template <>
56 | struct serialize<0>
57 | {
58 | template inline
59 | static void apply( Archive &, std::tuple & )
60 | { }
61 | };
62 | }
63 |
64 | //! Serializing for std::tuple
65 | template inline
66 | void serialize( Archive & ar, std::tuple & tuple )
67 | {
68 | tuple_detail::serialize>::value>::template apply( ar, tuple );
69 | }
70 | } // namespace cereal
71 |
72 | #endif // CEREAL_TYPES_TUPLE_HPP_
73 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/chrono.hpp:
--------------------------------------------------------------------------------
1 | /*! \file chrono.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_CHRONO_HPP_
31 | #define CEREAL_TYPES_CHRONO_HPP_
32 |
33 | #include
34 |
35 | namespace cereal
36 | {
37 | //! Saving std::chrono::duration
38 | template inline
39 | void save( Archive & ar, std::chrono::duration const & dur )
40 | {
41 | ar( _CEREAL_NVP("count", dur.count()) );
42 | }
43 |
44 | //! Loading std::chrono::duration
45 | template inline
46 | void load( Archive & ar, std::chrono::duration & dur )
47 | {
48 | R count;
49 | ar( _CEREAL_NVP("count", count) );
50 |
51 | dur = std::chrono::duration{count};
52 | }
53 |
54 | //! Saving std::chrono::time_point
55 | template inline
56 | void save( Archive & ar, std::chrono::time_point const & dur )
57 | {
58 | ar( _CEREAL_NVP("time_since_epoch", dur.time_since_epoch()) );
59 | }
60 |
61 | //! Loading std::chrono::time_point
62 | template inline
63 | void load( Archive & ar, std::chrono::time_point & dur )
64 | {
65 | D elapsed;
66 | ar( _CEREAL_NVP("time_since_epoch", elapsed) );
67 |
68 | dur = std::chrono::time_point{elapsed};
69 | }
70 | } // namespace cereal
71 |
72 | #endif // CEREAL_TYPES_CHRONO_HPP_
73 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/forward_list.hpp:
--------------------------------------------------------------------------------
1 | /*! \file forward_list.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_FORWARD_LIST_HPP_
31 | #define CEREAL_TYPES_FORWARD_LIST_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | //! Saving for std::forward_list all other types
39 | template inline
40 | void save( Archive & ar, std::forward_list const & forward_list )
41 | {
42 | // write the size - note that this is slow because we need to traverse
43 | // the entire list. there are ways we could avoid this but this was chosen
44 | // since it works in the most general fashion with any archive type
45 | size_type const size = std::distance( forward_list.begin(), forward_list.end() );
46 |
47 | ar( make_size_tag( size ) );
48 |
49 | // write the list
50 | for( const auto & i : forward_list )
51 | ar( i );
52 | }
53 |
54 | //! Loading for std::forward_list all other types from
55 | template
56 | void load( Archive & ar, std::forward_list & forward_list )
57 | {
58 | size_type size;
59 | ar( make_size_tag( size ) );
60 |
61 | forward_list.resize( static_cast( size ) );
62 |
63 | for( auto & i : forward_list )
64 | ar( i );
65 | }
66 | } // namespace cereal
67 |
68 | #endif // CEREAL_TYPES_FORWARD_LIST_HPP_
69 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/string.hpp:
--------------------------------------------------------------------------------
1 | /*! \file string.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_STRING_HPP_
31 | #define CEREAL_TYPES_STRING_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | //! Serialization for basic_string types, if binary data is supported
39 | template inline
40 | typename std::enable_if, Archive>::value, void>::type
41 | save(Archive & ar, std::basic_string const & str)
42 | {
43 | // Save number of chars + the data
44 | ar( make_size_tag( static_cast(str.size()) ) );
45 | ar( binary_data( str.data(), str.size() * sizeof(CharT) ) );
46 | }
47 |
48 | //! Serialization for basic_string types, if binary data is supported
49 | template inline
50 | typename std::enable_if, Archive>::value, void>::type
51 | load(Archive & ar, std::basic_string & str)
52 | {
53 | size_type size;
54 | ar( make_size_tag( size ) );
55 | str.resize(static_cast(size));
56 | ar( binary_data( const_cast( str.data() ), static_cast(size) * sizeof(CharT) ) );
57 | }
58 | } // namespace cereal
59 |
60 | #endif // CEREAL_TYPES_STRING_HPP_
61 |
62 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/stack.hpp:
--------------------------------------------------------------------------------
1 | /*! \file stack.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_STACK_HPP_
31 | #define CEREAL_TYPES_STACK_HPP_
32 |
33 | #include
34 | #include
35 |
36 | // The default container for stack is deque, so let's include that too
37 | #include
38 |
39 | namespace cereal
40 | {
41 | namespace stack_detail
42 | {
43 | //! Allows access to the protected container in stack
44 | template inline
45 | C const & container( std::stack const & stack )
46 | {
47 | struct H : public std::stack
48 | {
49 | static C const & get( std::stack const & s )
50 | {
51 | return s.*(&H::c);
52 | }
53 | };
54 |
55 | return H::get( stack );
56 | }
57 | }
58 |
59 | //! Saving for std::stack
60 | template inline
61 | void save( Archive & ar, std::stack const & stack )
62 | {
63 | ar( _CEREAL_NVP("container", stack_detail::container( stack )) );
64 | }
65 |
66 | //! Loading for std::stack
67 | template inline
68 | void load( Archive & ar, std::stack & stack )
69 | {
70 | C container;
71 | ar( _CEREAL_NVP("container", container) );
72 | stack = std::stack( std::move( container ) );
73 | }
74 | } // namespace cereal
75 |
76 | #endif // CEREAL_TYPES_STACK_HPP_
77 |
--------------------------------------------------------------------------------
/3rdparty/cereal/details/static_object.hpp:
--------------------------------------------------------------------------------
1 | /*! \file static_object.hpp
2 | \brief Internal polymorphism static object support
3 | \ingroup Internal */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_DETAILS_STATIC_OBJECT_HPP_
31 | #define CEREAL_DETAILS_STATIC_OBJECT_HPP_
32 |
33 | #include
34 |
35 | namespace cereal
36 | {
37 | namespace detail
38 | {
39 | //! A static, pre-execution object
40 | /*! This class will create a single copy (singleton) of some
41 | type and ensures that merely referencing this type will
42 | cause it to be instantiated and initialized pre-execution.
43 |
44 | For example, this is used heavily in the polymorphic pointer
45 | serialization mechanisms to bind various archive types with
46 | different polymorphic classes */
47 | template
48 | class StaticObject
49 | {
50 | private:
51 | //! Forces instantiation at pre-execution time
52 | static void instantiate( T const & ) {}
53 |
54 | static T & create()
55 | {
56 | static T t;
57 | instantiate(instance);
58 | return t;
59 | }
60 |
61 | StaticObject( StaticObject const & /*other*/ ) {}
62 |
63 | public:
64 | static T & getInstance()
65 | {
66 | return create();
67 | }
68 |
69 | private:
70 | static T & instance;
71 | };
72 |
73 | template T & StaticObject::instance = StaticObject::create();
74 | }
75 | } // namespace cereal
76 |
77 | #endif // CEREAL_DETAILS_STATIC_OBJECT_HPP_
78 |
--------------------------------------------------------------------------------
/3rdparty/cereal/details/util.hpp:
--------------------------------------------------------------------------------
1 | /*! \file util.hpp
2 | \brief Internal misc utilities
3 | \ingroup Internal */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_DETAILS_UTIL_HPP_
31 | #define CEREAL_DETAILS_UTIL_HPP_
32 |
33 | #include
34 | #include
35 |
36 | #ifdef _MSC_VER
37 | namespace cereal
38 | {
39 | namespace util
40 | {
41 | //! Demangles the type encoded in a string
42 | /*! @internal */
43 | inline std::string demangle( std::string const & name )
44 | {
45 | return name;
46 | }
47 |
48 | //! Gets the demangled name of a type
49 | /*! @internal */
50 | template inline
51 | std::string demangledName()
52 | {
53 | return typeid( T ).name();
54 | }
55 | } // namespace util
56 | } // namespace cereal
57 | #else // clang or gcc
58 | #include
59 | #include
60 | namespace cereal
61 | {
62 | namespace util
63 | {
64 | //! Demangles the type encoded in a string
65 | /*! @internal */
66 | inline std::string demangle(std::string mangledName)
67 | {
68 | int status = 0;
69 | char *demangledName = NULL;
70 | std::size_t len;
71 |
72 | demangledName = abi::__cxa_demangle(mangledName.c_str(), 0, &len, &status);
73 |
74 | std::string retName(demangledName);
75 | free(demangledName);
76 |
77 | return retName;
78 | }
79 |
80 | //! Gets the demangled name of a type
81 | /*! @internal */
82 | template inline
83 | std::string demangledName()
84 | { return demangle(typeid(T).name()); }
85 | }
86 | } // namespace cereal
87 | #endif
88 |
89 |
90 |
91 | #endif // CEREAL_DETAILS_UTIL_HPP_
92 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/array.hpp:
--------------------------------------------------------------------------------
1 | /*! \file array.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_ARRAY_HPP_
31 | #define CEREAL_TYPES_ARRAY_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | //! Saving for std::array primitive types
39 | //! using binary serialization, if supported
40 | template inline
41 | typename std::enable_if, Archive>::value
42 | && std::is_arithmetic::value, void>::type
43 | save( Archive & ar, std::array const & array )
44 | {
45 | ar( binary_data( array.data(), sizeof(array) ) );
46 | }
47 |
48 | //! Loading for std::array primitive types
49 | //! using binary serialization, if supported
50 | template inline
51 | typename std::enable_if, Archive>::value
52 | && std::is_arithmetic::value, void>::type
53 | load( Archive & ar, std::array & array )
54 | {
55 | ar( binary_data( array.data(), sizeof(array) ) );
56 | }
57 |
58 | //! Saving for std::array all other types
59 | template inline
60 | typename std::enable_if, Archive>::value
61 | || !std::is_arithmetic::value, void>::type
62 | save( Archive & ar, std::array const & array )
63 | {
64 | for( auto const & i : array )
65 | ar( i );
66 | }
67 |
68 | //! Loading for std::array all other types
69 | template inline
70 | typename std::enable_if, Archive>::value
71 | || !std::is_arithmetic::value, void>::type
72 | load( Archive & ar, std::array & array )
73 | {
74 | for( auto & i : array )
75 | ar( i );
76 | }
77 | } // namespace cereal
78 |
79 | #endif // CEREAL_TYPES_ARRAY_HPP_
80 |
--------------------------------------------------------------------------------
/3rdparty/cereal/external/rapidxml/rapidxml_utils.hpp:
--------------------------------------------------------------------------------
1 | #ifndef RAPIDXML_UTILS_HPP_INCLUDED
2 | #define RAPIDXML_UTILS_HPP_INCLUDED
3 |
4 | // Copyright (C) 2006, 2009 Marcin Kalicinski
5 | // Version 1.13
6 | // Revision $DateTime: 2009/05/13 01:46:17 $
7 | //! in certain simple scenarios. They should probably not be used if maximizing performance is the main objective.
8 |
9 | #include "rapidxml.hpp"
10 | #include
11 | #include
12 | #include
13 | #include
14 |
15 | namespace rapidxml
16 | {
17 |
18 | //! Represents data loaded from a file
19 | template
20 | class file
21 | {
22 |
23 | public:
24 |
25 | //! Loads file into the memory. Data will be automatically destroyed by the destructor.
26 | //! \param filename Filename to load.
27 | file(const char *filename)
28 | {
29 | using namespace std;
30 |
31 | // Open stream
32 | basic_ifstream stream(filename, ios::binary);
33 | if (!stream)
34 | throw runtime_error(string("cannot open file ") + filename);
35 | stream.unsetf(ios::skipws);
36 |
37 | // Determine stream size
38 | stream.seekg(0, ios::end);
39 | size_t size = stream.tellg();
40 | stream.seekg(0);
41 |
42 | // Load data and add terminating 0
43 | m_data.resize(size + 1);
44 | stream.read(&m_data.front(), static_cast(size));
45 | m_data[size] = 0;
46 | }
47 |
48 | //! Loads file into the memory. Data will be automatically destroyed by the destructor
49 | //! \param stream Stream to load from
50 | file(std::basic_istream &stream)
51 | {
52 | using namespace std;
53 |
54 | // Load data and add terminating 0
55 | stream.unsetf(ios::skipws);
56 | m_data.assign(istreambuf_iterator(stream), istreambuf_iterator());
57 | if (stream.fail() || stream.bad())
58 | throw runtime_error("error reading stream");
59 | m_data.push_back(0);
60 | }
61 |
62 | //! Gets file data.
63 | //! \return Pointer to data of file.
64 | Ch *data()
65 | {
66 | return &m_data.front();
67 | }
68 |
69 | //! Gets file data.
70 | //! \return Pointer to data of file.
71 | const Ch *data() const
72 | {
73 | return &m_data.front();
74 | }
75 |
76 | //! Gets file data size.
77 | //! \return Size of file data, in characters.
78 | std::size_t size() const
79 | {
80 | return m_data.size();
81 | }
82 |
83 | private:
84 |
85 | std::vector m_data; // File data
86 |
87 | };
88 |
89 | //! Counts children of node. Time complexity is O(n).
90 | //! \return Number of children of node
91 | template
92 | inline std::size_t count_children(xml_node *node)
93 | {
94 | xml_node *child = node->first_node();
95 | std::size_t count = 0;
96 | while (child)
97 | {
98 | ++count;
99 | child = child->next_sibling();
100 | }
101 | return count;
102 | }
103 |
104 | //! Counts attributes of node. Time complexity is O(n).
105 | //! \return Number of attributes of node
106 | template
107 | inline std::size_t count_attributes(xml_node *node)
108 | {
109 | xml_attribute *attr = node->first_attribute();
110 | std::size_t count = 0;
111 | while (attr)
112 | {
113 | ++count;
114 | attr = attr->next_attribute();
115 | }
116 | return count;
117 | }
118 |
119 | }
120 |
121 | #endif
122 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/set.hpp:
--------------------------------------------------------------------------------
1 | /*! \file set.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_SET_HPP_
31 | #define CEREAL_TYPES_SET_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | namespace set_detail
39 | {
40 | //! @internal
41 | template inline
42 | void save( Archive & ar, SetT const & set )
43 | {
44 | ar( make_size_tag( static_cast(set.size()) ) );
45 |
46 | for( const auto & i : set )
47 | ar( i );
48 | }
49 |
50 | //! @internal
51 | template inline
52 | void load( Archive & ar, SetT & set )
53 | {
54 | size_type size;
55 | ar( make_size_tag( size ) );
56 |
57 | set.clear();
58 |
59 | auto hint = set.begin();
60 | for( size_type i = 0; i < size; ++i )
61 | {
62 | typename SetT::key_type key;
63 |
64 | ar( key );
65 | #ifdef CEREAL_OLDER_GCC
66 | hint = set.insert( hint, std::move( key ) );
67 | #else // NOT CEREAL_OLDER_GCC
68 | hint = set.emplace_hint( hint, std::move( key ) );
69 | #endif // NOT CEREAL_OLDER_GCC
70 | }
71 | }
72 | }
73 |
74 | //! Saving for std::set
75 | template inline
76 | void save( Archive & ar, std::set const & set )
77 | {
78 | set_detail::save( ar, set );
79 | }
80 |
81 | //! Loading for std::set
82 | template inline
83 | void load( Archive & ar, std::set & set )
84 | {
85 | set_detail::load( ar, set );
86 | }
87 |
88 | //! Saving for std::multiset
89 | template inline
90 | void save( Archive & ar, std::multiset const & multiset )
91 | {
92 | set_detail::save( ar, multiset );
93 | }
94 |
95 | //! Loading for std::multiset
96 | template inline
97 | void load( Archive & ar, std::multiset & multiset )
98 | {
99 | set_detail::load( ar, multiset );
100 | }
101 | } // namespace cereal
102 |
103 | #endif // CEREAL_TYPES_SET_HPP_
104 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/unordered_set.hpp:
--------------------------------------------------------------------------------
1 | /*! \file unordered_set.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_UNORDERED_SET_HPP_
31 | #define CEREAL_TYPES_UNORDERED_SET_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | namespace unordered_set_detail
39 | {
40 | //! @internal
41 | template inline
42 | void save( Archive & ar, SetT const & set )
43 | {
44 | ar( make_size_tag( static_cast(set.size()) ) );
45 |
46 | for( const auto & i : set )
47 | ar( i );
48 | }
49 |
50 | //! @internal
51 | template inline
52 | void load( Archive & ar, SetT & set )
53 | {
54 | size_type size;
55 | ar( make_size_tag( size ) );
56 |
57 | set.clear();
58 | set.reserve( static_cast( size ) );
59 |
60 | for( size_type i = 0; i < size; ++i )
61 | {
62 | typename SetT::key_type key;
63 |
64 | ar( key );
65 | set.emplace( std::move( key ) );
66 | }
67 | }
68 | }
69 |
70 | //! Saving for std::unordered_set
71 | template inline
72 | void save( Archive & ar, std::unordered_set const & unordered_set )
73 | {
74 | unordered_set_detail::save( ar, unordered_set );
75 | }
76 |
77 | //! Loading for std::unordered_set
78 | template inline
79 | void load( Archive & ar, std::unordered_set & unordered_set )
80 | {
81 | unordered_set_detail::load( ar, unordered_set );
82 | }
83 |
84 | //! Saving for std::unordered_multiset
85 | template inline
86 | void save( Archive & ar, std::unordered_multiset const & unordered_multiset )
87 | {
88 | unordered_set_detail::save( ar, unordered_multiset );
89 | }
90 |
91 | //! Loading for std::unordered_multiset
92 | template inline
93 | void load( Archive & ar, std::unordered_multiset & unordered_multiset )
94 | {
95 | unordered_set_detail::load( ar, unordered_multiset );
96 | }
97 | } // namespace cereal
98 |
99 | #endif // CEREAL_TYPES_UNORDERED_SET_HPP_
100 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/bitset.hpp:
--------------------------------------------------------------------------------
1 | /*! \file bitset.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_BITSET_HPP_
31 | #define CEREAL_TYPES_BITSET_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | namespace bitset_detail
39 | {
40 | //! The type the bitset is encoded with
41 | /*! @internal */
42 | enum class type : uint8_t
43 | {
44 | ulong,
45 | ullong,
46 | string
47 | };
48 | }
49 |
50 | //! Serializing (save) for std::bitset
51 | template inline
52 | void save( Archive & ar, std::bitset const & bits )
53 | {
54 | try
55 | {
56 | auto const b = bits.to_ulong();
57 | ar( _CEREAL_NVP("type", bitset_detail::type::ulong) );
58 | ar( _CEREAL_NVP("data", b) );
59 | }
60 | catch( std::overflow_error const & )
61 | {
62 | try
63 | {
64 | auto const b = bits.to_ullong();
65 | ar( _CEREAL_NVP("type", bitset_detail::type::ullong) );
66 | ar( _CEREAL_NVP("data", b) );
67 | }
68 | catch( std::overflow_error const & )
69 | {
70 | ar( _CEREAL_NVP("type", bitset_detail::type::string) );
71 | ar( _CEREAL_NVP("data", bits.to_string()) );
72 | }
73 | }
74 | }
75 |
76 | //! Serializing (load) for std::bitset
77 | template inline
78 | void load( Archive & ar, std::bitset & bits )
79 | {
80 | bitset_detail::type t;
81 | ar( _CEREAL_NVP("type", t) );
82 |
83 | switch( t )
84 | {
85 | case bitset_detail::type::ulong:
86 | {
87 | unsigned long b;
88 | ar( _CEREAL_NVP("data", b) );
89 | bits = std::bitset( b );
90 | break;
91 | }
92 | case bitset_detail::type::ullong:
93 | {
94 | unsigned long long b;
95 | ar( _CEREAL_NVP("data", b) );
96 | bits = std::bitset( b );
97 | break;
98 | }
99 | case bitset_detail::type::string:
100 | {
101 | std::string b;
102 | ar( _CEREAL_NVP("data", b) );
103 | bits = std::bitset( b );
104 | break;
105 | }
106 | default:
107 | throw Exception("Invalid bitset data representation");
108 | }
109 | }
110 | } // namespace cereal
111 |
112 | #endif // CEREAL_TYPES_BITSET_HPP_
113 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/unordered_map.hpp:
--------------------------------------------------------------------------------
1 | /*! \file unordered_map.hpp
2 | \brief Support for types found in \
3 | \ingroup STLSupport */
4 | /*
5 | Copyright (c) 2014, Randolph Voorhies, Shane Grant
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without
9 | modification, are permitted provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of cereal nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL RANDOLPH VOORHIES OR SHANE GRANT BE LIABLE FOR ANY
23 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 | #ifndef CEREAL_TYPES_UNORDERED_MAP_HPP_
31 | #define CEREAL_TYPES_UNORDERED_MAP_HPP_
32 |
33 | #include
34 | #include
35 |
36 | namespace cereal
37 | {
38 | namespace unordered_map_detail
39 | {
40 | //! @internal
41 | template inline
42 | void save( Archive & ar, MapT const & map )
43 | {
44 | ar( make_size_tag( static_cast(map.size()) ) );
45 |
46 | for( const auto & i : map )
47 | ar( make_map_item(i.first, i.second) );
48 | }
49 |
50 | //! @internal
51 | template inline
52 | void load( Archive & ar, MapT & map )
53 | {
54 | size_type size;
55 | ar( make_size_tag( size ) );
56 |
57 | map.clear();
58 | map.reserve( static_cast( size ) );
59 |
60 | for( size_type i = 0; i < size; ++i )
61 | {
62 | typename MapT::key_type key;
63 | typename MapT::mapped_type value;
64 |
65 | ar( make_map_item(key, value) );
66 | map.emplace( std::move( key ), std::move( value ) );
67 | }
68 | }
69 | }
70 |
71 | //! Saving for std::unordered_map
72 | template inline
73 | void save( Archive & ar, std::unordered_map const & unordered_map )
74 | {
75 | unordered_map_detail::save( ar, unordered_map );
76 | }
77 |
78 | //! Loading for std::unordered_map
79 | template inline
80 | void load( Archive & ar, std::unordered_map & unordered_map )
81 | {
82 | unordered_map_detail::load( ar, unordered_map );
83 | }
84 |
85 | //! Saving for std::unordered_multimap
86 | template inline
87 | void save( Archive & ar, std::unordered_multimap const & unordered_multimap )
88 | {
89 | unordered_map_detail::save( ar, unordered_multimap );
90 | }
91 |
92 | //! Loading for std::unordered_multimap
93 | template inline
94 | void load( Archive & ar, std::unordered_multimap & unordered_multimap )
95 | {
96 | unordered_map_detail::load( ar, unordered_multimap );
97 | }
98 | } // namespace cereal
99 |
100 | #endif // CEREAL_TYPES_UNORDERED_MAP_HPP_
101 |
--------------------------------------------------------------------------------
/tests/AOP/AOP.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {6FE78AAD-AA3C-49C5-948A-A6C0A99217E5}
15 | Win32Proj
16 | AOP
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/tests/Observer/Observer.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {C0852CC8-E7DD-4B47-8357-4211280119F4}
15 | Win32Proj
16 | Observer
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/tests/mapSort/mapSort.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {E29EEFAA-3424-46BA-9E84-3B2F9B683248}
15 | Win32Proj
16 | mapSort
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/threads/threads.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {6DEA9415-9792-4A64-8066-CE1B82C75FEA}
15 | Win32Proj
16 | threads
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/tests/PrintArgs/PrintArgs.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {23FB2F63-F20B-4381-9361-5C271F6C4F5B}
15 | Win32Proj
16 | PrintArgs
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/decltype/decltype.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {C2DB7A3F-ABC9-4DA7-A534-DDDCB6503AF4}
15 | Win32Proj
16 | decltype
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/enum_union/enum_union.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {ED3D565D-7266-4226-A8D0-C0550DD9F41C}
15 | Win32Proj
16 | enum_union
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/lambda_test/lambda_test.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {1320ABF2-BB63-4C53-A680-6D4B5B75646B}
15 | Win32Proj
16 | lambda_test
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/regex_test/regex_test.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {96C8CCEC-A81F-4068-A061-46383B091201}
15 | Win32Proj
16 | regex_test
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/tuple_test/tuple_test.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {2FE850FA-C8BD-4602-A175-68636502D12A}
15 | Win32Proj
16 | tuple_test
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/std_components/std_time/std_time.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 |
15 |
16 |
17 | {E29C92C6-E426-47BF-A2D1-B1DA63F5C86B}
18 | Win32Proj
19 | std_time
20 |
21 |
22 |
23 | Application
24 | true
25 | v120
26 | Unicode
27 |
28 |
29 | Application
30 | false
31 | v120
32 | true
33 | Unicode
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 | true
47 |
48 |
49 | false
50 |
51 |
52 |
53 |
54 |
55 | Level3
56 | Disabled
57 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
58 | true
59 |
60 |
61 | Console
62 | true
63 |
64 |
65 |
66 |
67 | Level3
68 |
69 |
70 | MaxSpeed
71 | true
72 | true
73 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
74 | true
75 |
76 |
77 | Console
78 | true
79 | true
80 | true
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/stl/algorithm_sort/algorithm_sort.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {E47E4F51-B4E1-4DA6-8D9E-6720A83E04A0}
15 | Win32Proj
16 | algorithm_sort
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/tests/ComposeFunctor/ComposeFunctor.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {F8A92A39-7E1B-47D7-AB46-40A9A513BC9C}
15 | Win32Proj
16 | ComposeFunctor
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/delete_default/delete_default.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {6ED476F8-69DD-49B2-AE07-682959E2D8D7}
15 | Win32Proj
16 | delete_default
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/overrides_final/overrides_final.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {196552B3-72D6-4D58-946A-099AE091EC28}
15 | Win32Proj
16 | overrides_final
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/right_value_ref/right_value_ref.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {DDC1E87F-36FA-448F-B6DB-A176229F94FF}
15 | Win32Proj
16 | right_value_ref
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/using_and_so_on/using_and_so_on.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {272FEDFF-526C-4745-98C7-DBC3E66E04B4}
15 | Win32Proj
16 | using_and_so_on
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/constexpr_nullptr/constexpr_nullptr.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {503C0A58-8269-4849-A861-5C95EB9E58E7}
15 | Win32Proj
16 | constexpr_nullptr
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/unordered_set_map/unordered_set_map.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {DA1C9192-A190-4695-94D1-20B375A8FFC0}
15 | Win32Proj
16 | unordered_set_map
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/stl/container_sequence/container_sequence.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 |
15 |
16 |
17 | {CCF50090-9A44-4F6F-B87C-82D75368CD9C}
18 | Win32Proj
19 | container_sequence
20 |
21 |
22 |
23 | Application
24 | true
25 | v120
26 | Unicode
27 |
28 |
29 | Application
30 | false
31 | v120
32 | true
33 | Unicode
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 | true
47 |
48 |
49 | false
50 |
51 |
52 |
53 |
54 |
55 | Level3
56 | Disabled
57 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
58 | true
59 |
60 |
61 | Console
62 | true
63 |
64 |
65 |
66 |
67 | Level3
68 |
69 |
70 | MaxSpeed
71 | true
72 | true
73 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
74 | true
75 |
76 |
77 | Console
78 | true
79 | true
80 | true
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/variadic_templates/variadic_templates.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {EF5E3C13-9F9A-49B5-8199-30682CF659D3}
15 | Win32Proj
16 | variadic_templates
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/initialization_list/initialization_list.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {54041CEA-8C44-4417-AE21-1CFEB023980D}
15 | Win32Proj
16 | initialization_list
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/cpp11features/object_construction/object_construction.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | Win32
7 |
8 |
9 | Release
10 | Win32
11 |
12 |
13 |
14 | {A4FBE167-62AC-41EB-B66E-3AFA701C0340}
15 | Win32Proj
16 | object_construction
17 |
18 |
19 |
20 | Application
21 | true
22 | v120
23 | Unicode
24 |
25 |
26 | Application
27 | false
28 | v120
29 | true
30 | Unicode
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | true
44 |
45 |
46 | false
47 |
48 |
49 |
50 |
51 |
52 | Level3
53 | Disabled
54 | WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
55 | true
56 |
57 |
58 | Console
59 | true
60 |
61 |
62 |
63 |
64 | Level3
65 |
66 |
67 | MaxSpeed
68 | true
69 | true
70 | WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
71 | true
72 |
73 |
74 | Console
75 | true
76 | true
77 | true
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/3rdparty/cereal/types/map.hpp:
--------------------------------------------------------------------------------
1 | /*! \file map.hpp
2 | \brief Support for types found in \