physical-structure.html 3.9 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  4. <!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
  5. <!-- Software License, Version 1.0. (See accompanying -->
  6. <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
  7. <head>
  8. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  9. <meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
  10. <title>THE BOOST MPL LIBRARY: Physical Structure</title>
  11. <link rel="stylesheet" href="../style.css" type="text/css" />
  12. </head>
  13. <body class="docframe">
  14. <table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./technical-details.html" class="navigation-link">Prev</a>&nbsp;<a href="./dependencies.html" class="navigation-link">Next</a></span><span class="navigation-group-separator">&nbsp;|&nbsp;</span><span class="navigation-group">Back&nbsp;<a href="./dependencies.html" class="navigation-link">Along</a></span><span class="navigation-group-separator">&nbsp;|&nbsp;</span><span class="navigation-group"><a href="./technical-details.html" class="navigation-link">Up</a>&nbsp;<a href="../index.html" class="navigation-link">Home</a></span><span class="navigation-group-separator">&nbsp;|&nbsp;</span><span class="navigation-group"><a href="./tutorial_toc.html" class="navigation-link">Full TOC</a></span></td>
  15. <td class="header-group page-location"><a href="../index.html" class="navigation-link">Front Page</a> / <a href="./technical-details.html" class="navigation-link">Technical Details</a> / <a href="./physical-structure.html" class="navigation-link">Physical Structure</a></td>
  16. </tr></table><div class="header-separator"></div>
  17. <div class="section" id="physical-structure">
  18. <h1><a class="toc-backref" href="./technical-details.html#id71" name="physical-structure">Physical Structure</a></h1>
  19. <p>The library uses a fine-grained header structure with one header per public
  20. component (class/function template), with the header named after the component. For example,
  21. <tt class="literal"><span class="pre">boost::mpl::apply</span></tt> is defined in the header <tt class="literal"><span class="pre">&lt;boost/mpl/apply.hpp&gt;</span></tt>. This
  22. scheme ensures both that we don't pay for what we don't use in terms of compilation time
  23. and header dependencies, and frees us from memorizing the
  24. relationship between a given header and the components it
  25. provides. For entities that are likely to be used together,
  26. such as arithmetic
  27. metafunctions (<tt class="literal"><span class="pre">plus</span></tt>, <tt class="literal"><span class="pre">minus</span></tt>, <tt class="literal"><span class="pre">times</span></tt>, et. al.), the library also supplies
  28. appropriately-named composite headers
  29. (<tt class="literal"><span class="pre">&lt;boost/mpl/airthmetic.hpp&gt;</span></tt>) as a convenience.</p>
  30. </div>
  31. <div class="footer-separator"></div>
  32. <table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./technical-details.html" class="navigation-link">Prev</a>&nbsp;<a href="./dependencies.html" class="navigation-link">Next</a></span><span class="navigation-group-separator">&nbsp;|&nbsp;</span><span class="navigation-group">Back&nbsp;<a href="./dependencies.html" class="navigation-link">Along</a></span><span class="navigation-group-separator">&nbsp;|&nbsp;</span><span class="navigation-group"><a href="./technical-details.html" class="navigation-link">Up</a>&nbsp;<a href="../index.html" class="navigation-link">Home</a></span><span class="navigation-group-separator">&nbsp;|&nbsp;</span><span class="navigation-group"><a href="./tutorial_toc.html" class="navigation-link">Full TOC</a></span></td>
  33. </tr></table></body>
  34. </html>