Difference between revisions of "Used boost libraries"

From KlayGE
Jump to: navigation, search
 
(22 intermediate revisions by one user not shown)
Line 2: Line 2:
  
 
The used Boost libraries that must be built separately:
 
The used Boost libraries that must be built separately:
−
*Atomic (Can be replaced by C++11)
+
*'''Filesystem''' (Can be replaced by TS's or C++17's in msvc and gcc.)
−
*Chrono (Can be replaced by C++11)
+
−
*Date Time (Not used directly. No dependency on VC11+)
+
−
*Filesystem (Can be replaced by TR2's on VC11+)
+
−
*Program Options (Only used in [[toolset]])
+
−
*Regex (Only used in [[toolset]], can be replaced by C++11)
+
−
*System (Can be replaced by C++11)
+
−
*Thread (Can be replaced by C++11)
+
  
 
Header-only Boost libraries:
 
Header-only Boost libraries:
 
*Algorithm/string
 
*Algorithm/string
−
*Any
+
*'''Any''' (C++17)
−
*Array (Can be replaced by C++11)
+
 
*Assert
 
*Assert
−
*Bind (Can be replaced by C++11)
 
−
*Circular Buffer
 
 
*Container/flat_map
 
*Container/flat_map
−
*Foreach (Can be replaced by C++11)
+
*Core/noncopyable
−
*Function (Can be replaced by C++11)
+
*'''Optional''' (C++17)
−
*Functional/Hash
+
*TypeIndex
−
*Integer (Can be replaced by C++11)
+
*Utility/Operators
−
*Lexical Cast
+
*'''Utility/string_view''' (C++17)  
−
*Lock free
+
−
*Member Function (Can be replaced by C++11)
+
−
*Move (Can be replaced by C++11)
+
−
*MPL/if_ (Can be replaced by C++11)
+
−
*MPL/void_
+
−
*Operators
+
−
*Optional
+
−
*Random (Can be replaced by C++11)
+
−
*Ref (Can be replaced by C++11)
+
−
*Signals2
+
−
*Smart Ptr (Can be replaced by C++11)
+
−
*Static Assert (Can be replaced by C++11)
+
−
*Tuple (Can be replaced by C++11)
+
−
*Type Traits (Can be replaced by C++11)
+
−
*Typeof (Can be replaced by C++11)
+
−
*Unordered (Can be replaced by C++11)
+
−
*Utility/checked_delete
+
−
*Utility/noncopyable
+
−
*Utility/result_of (Can be replaced by C++11)
+
  
−
Along with the popularize of C++11-supported compiler, those libraries are switched to [[Used C++11 features|C++11]]'s. Boost libraries are used only when necessary.
+
Items marked as bold font can be replaced by features in C++11 or C++17. Along with the popularize of C++11/17-supported compiler, those libraries are switched to [[Used C++11 features|C++11]]'s or [[Used C++17 features|C++17]]'s. Boost libraries are used only when necessary.
  
 
[[zh:使用到的boost库]]
 
[[zh:使用到的boost库]]

Latest revision as of 02:32, 26 July 2019

Much code in KlayGE depend on Boost. Here's the list of used libraries.

The used Boost libraries that must be built separately:

  • Filesystem (Can be replaced by TS's or C++17's in msvc and gcc.)

Header-only Boost libraries:

  • Algorithm/string
  • Any (C++17)
  • Assert
  • Container/flat_map
  • Core/noncopyable
  • Optional (C++17)
  • TypeIndex
  • Utility/Operators
  • Utility/string_view (C++17)

Items marked as bold font can be replaced by features in C++11 or C++17. Along with the popularize of C++11/17-supported compiler, those libraries are switched to C++11's or C++17's. Boost libraries are used only when necessary.