#ifndef BOOST_PREDEF_VERSION_NUMBER_H
#define BOOST_PREDEF_VERSION_NUMBER_H
-/*`
-[heading `BOOST_VERSION_NUMBER`]
+/* tag::reference[]
+= `BOOST_VERSION_NUMBER`
-``
+[source]
+----
BOOST_VERSION_NUMBER(major,minor,patch)
-``
+----
Defines standard version numbers, with these properties:
-* Decimal base whole numbers in the range \[0,1000000000).
+* Decimal base whole numbers in the range [0,1000000000).
The number range is designed to allow for a (2,2,5) triplet.
Which fits within a 32 bit value.
-* The `major` number can be in the \[0,99\] range.
-* The `minor` number can be in the \[0,99\] range.
-* The `patch` number can be in the \[0,99999\] range.
+* The `major` number can be in the [0,99] range.
+* The `minor` number can be in the [0,99] range.
+* The `patch` number can be in the [0,99999] range.
* Values can be specified in any base. As the defined value
is an constant expression.
* Value can be directly used in both preprocessor and compiler
major, minor, and patch numbers. And values over the ranges
are truncated (modulo).
-*/
+*/ // end::reference[]
#define BOOST_VERSION_NUMBER(major,minor,patch) \
( (((major)%100)*10000000) + (((minor)%100)*100000) + ((patch)%100000) )
#define BOOST_VERSION_NUMBER_NOT_AVAILABLE \
BOOST_VERSION_NUMBER_ZERO
-/*`
-``
+/* tag::reference[]
+[source]
+----
BOOST_VERSION_NUMBER_MAJOR(N), BOOST_VERSION_NUMBER_MINOR(N), BOOST_VERSION_NUMBER_PATCH(N)
-``
+----
The macros extract the major, minor, and patch portion from a well formed
version number resulting in a preprocessor expression in the range of
-\[0,99\] or \[0,99999\] for the major and minor, or patch numbers
+[0,99] or [0,99999] for the major and minor, or patch numbers
respectively.
-*/
+*/ // end::reference[]
#define BOOST_VERSION_NUMBER_MAJOR(N) \
( ((N)/10000000)%100 )