Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62393 - sandbox/SOC/2010/bit_masks/lib/integer/doc
From: bbartmanboost_at_[hidden]
Date: 2010-06-02 17:15:53


Author: bbartman
Date: 2010-06-02 17:15:52 EDT (Wed, 02 Jun 2010)
New Revision: 62393
URL: http://svn.boost.org/trac/boost/changeset/62393

Log:
documentation system is now working and I have begun the task of documenting the library as I work
Text files modified:
   sandbox/SOC/2010/bit_masks/lib/integer/doc/bit_masks.qbk | 39 +++++++++++++++++++++++++++++++++++++++
   sandbox/SOC/2010/bit_masks/lib/integer/doc/integral_mask.qbk | 14 ++++++++++++++
   2 files changed, 53 insertions(+), 0 deletions(-)

Modified: sandbox/SOC/2010/bit_masks/lib/integer/doc/bit_masks.qbk
==============================================================================
--- sandbox/SOC/2010/bit_masks/lib/integer/doc/bit_masks.qbk (original)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/bit_masks.qbk 2010-06-02 17:15:52 EDT (Wed, 02 Jun 2010)
@@ -25,5 +25,44 @@
 
 [endsect]
 
+[section:bit_mask_purpose Purpose]
+The purpose of this library extension to the boost.integer library is to make
+the creation of simple and complex integral masks simple and easy and constructable on
+compile time. The structure of the masks are extensions of the type `integral_constant`
+provided by boost.type_traits library. All masks are able to be treated as the
+`integral_constant` type. All masks provide the following three compile time accessible
+features. They all provide `::type`,`::value_type` and `::value` for compile time
+support. This also means that all masks can be used with the boost.mpl bitwise
+operator meta-functions for creation of more complex masks. Now because these values
+were intended to be used during the runtime of a program all of the masking types
+which are provided by this library provide an additional functionality for run time
+support. All of the mask types in this library provide the implicit cast operator
+allowing for the meta-function objects to be used as if they were the integral value
+they were used to construct. For example,
+[c++]
+``
+#include <boost/integer/integral_mask.hpp>
 
+using namespace boost;
+
+
+int main() {
+ int t = 0xdeadbeef;
+ typedef integral_mask<int, 3> mask_type;
+
+ int unmasked_t = t & mask_type();
+ return 0;
+}
+``
+For the use of a mask all that one needs to do is to construct the mask and
+simply treat it as though it were an integer.
+
+[note All masks are trivially default constructible and destructible.]
+
+[endsect]
+
+[section:integral_mask `integral_mask` type]
+This type is used for composing the most basic masks.
+
+[endsect]
 

Modified: sandbox/SOC/2010/bit_masks/lib/integer/doc/integral_mask.qbk
==============================================================================
--- sandbox/SOC/2010/bit_masks/lib/integer/doc/integral_mask.qbk (original)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/integral_mask.qbk 2010-06-02 17:15:52 EDT (Wed, 02 Jun 2010)
@@ -0,0 +1,14 @@
+[article Integral_mask
+ [quickbook 1.5]
+ [copyright 2010 Brian Bartman]
+ [purpose Bit Mask Selection]
+ [license
+ Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENSE_1_0.txt or copy at
+ [@http://www.boost.org/LICENSE_1_0.txt])
+ ]
+ [authors [Bartman, Brian]]
+]
+
+[section:integral_mask integral_mask type]
+[endsect]


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk