forked from boostorg/preprocessor
Compare commits
653 Commits
boost-1.27
...
develop
Author | SHA1 | Date | |
---|---|---|---|
69614bb1da | |||
24abbdc906 | |||
45178c3cc5 | |||
93b896c932 | |||
229f654b59 | |||
aa8f347df2 | |||
d8471d6526 | |||
bee33b0117 | |||
b49e14231f | |||
5289c50299 | |||
5e17804af2 | |||
15dcb92ebf | |||
ae5e475169 | |||
112673238a | |||
bff73def85 | |||
5e2770334d | |||
e4186a6df1 | |||
4a274cbe86 | |||
7bed5072e4 | |||
b3f95b899f | |||
8f937e431e | |||
879e876d45 | |||
1a2e813fcb | |||
5a30bc472d | |||
d12d2d9a3a | |||
2ab48feed5 | |||
6ec9072f27 | |||
cac5e3e2ef | |||
4b1d674a17 | |||
9fcd0a289a | |||
5fd12d32d4 | |||
8288ce7575 | |||
ae836b12e4 | |||
fe22f14954 | |||
322e4266fb | |||
f74e04f827 | |||
1ace1d3806 | |||
ed066d3c81 | |||
96e994a25a | |||
ac553f44fb | |||
b93e99332b | |||
001d109eab | |||
fedfdc2f32 | |||
775f9eb24e | |||
9b8138324f | |||
158fc13f01 | |||
721ef44e79 | |||
c1eb9292d7 | |||
d49db1ef09 | |||
92ac085edf | |||
fe67cda385 | |||
a1303d0763 | |||
5c83504677 | |||
b0a0bb281c | |||
661aa5c36e | |||
a9ed92efbd | |||
f977ee0cd9 | |||
5d70c1fc7b | |||
1cf82f9928 | |||
59cdb3e5db | |||
2c20e742a1 | |||
4afae94309 | |||
44a4e07994 | |||
3f43be5b55 | |||
d86d461aa7 | |||
45565b6dc3 | |||
1fe79acc20 | |||
ff9d451901 | |||
e7b1f71c7e | |||
e44c47c9c3 | |||
0e1a2fecb1 | |||
c5fe11a649 | |||
ee0c4135c3 | |||
2fb4b3de1b | |||
585fad5198 | |||
21f796567e | |||
905520aaf8 | |||
ea15d11d2f | |||
42a283d112 | |||
aba61d6018 | |||
572f3f4d4a | |||
6272649c8f | |||
efe8cb6242 | |||
a03dd0419e | |||
9ba4469131 | |||
7e3516eb8f | |||
7e30c606b7 | |||
28a0c21651 | |||
0fbfe9c981 | |||
c8e005f696 | |||
74f652c85f | |||
b9424eac02 | |||
f10c669bab | |||
0fd6b84304 | |||
db21240060 | |||
14a263bf9d | |||
5c7ae49828 | |||
bb9d4273d4 | |||
110ddaca75 | |||
5e74d9f12e | |||
1b5c17f75b | |||
15d0d66a75 | |||
e231fe7ad9 | |||
a037024cec | |||
57c160f921 | |||
3ac4c915a3 | |||
47b430e3d5 | |||
59048974ba | |||
62da4cc84b | |||
b72dcd7958 | |||
cf34b5c21b | |||
1347313cae | |||
31704b522a | |||
f16f7721b5 | |||
43f02f9405 | |||
e8bbb16f57 | |||
25aaea0136 | |||
13c9669410 | |||
d41d1dda97 | |||
c07bb185c1 | |||
43caf4d41e | |||
a6c5cd5bcf | |||
05b3defe2f | |||
d49211a963 | |||
7541c351ce | |||
b68a2409ad | |||
0999dfe1d5 | |||
a7560df684 | |||
efa576203b | |||
fd3b57b15a | |||
c859da1fc9 | |||
efea46b2fb | |||
b95d91ee71 | |||
9bf0043260 | |||
533d636ece | |||
0dcaaac66f | |||
3b6102cd03 | |||
82addd1b28 | |||
ffb26db146 | |||
e4fb5f4866 | |||
9cf66925d4 | |||
e4ce0f06f5 | |||
98f6c75e1e | |||
f99ed9921a | |||
a378d239da | |||
0332a793f5 | |||
6c350c6fc3 | |||
728c71ba75 | |||
1ab9385a91 | |||
688c3f2ee6 | |||
bd0db5ce8b | |||
da60e76913 | |||
661dd91603 | |||
ffb27a1d56 | |||
a6404a8fb2 | |||
732d00341f | |||
e7256313c4 | |||
b3036f1a63 | |||
de49676452 | |||
4f4f04c56b | |||
c5e90f23b7 | |||
776037ae56 | |||
a9827c8fc8 | |||
6db241a78d | |||
4fe7807f79 | |||
80107ea60a | |||
1473215dc7 | |||
291f92696d | |||
771edacbff | |||
ac99242b71 | |||
bda6ad9148 | |||
88a0365f4d | |||
6af29d8b77 | |||
af70b2872e | |||
b7b1425c7f | |||
54669af127 | |||
e439b2555e | |||
4cce94a84e | |||
2f9be1086a | |||
684e9991ec | |||
a42f374b97 | |||
0cdd09e6e1 | |||
22deb165b6 | |||
e476f10f52 | |||
c436de6142 | |||
5756fb08ad | |||
9b3e6a2cd6 | |||
d135cad759 | |||
8d26689387 | |||
f78f0a1d25 | |||
87fd89a7db | |||
adf2746626 | |||
fe70754559 | |||
45588469f3 | |||
344ce6abf9 | |||
31653b34c9 | |||
a4e304ca87 | |||
0e335df79e | |||
ee5ed2510d | |||
dd44e1eea5 | |||
b5c081bf7a | |||
347f48afae | |||
49a72ac4f2 | |||
56090c56b5 | |||
00b2f44624 | |||
a329a67b47 | |||
34af3a925c | |||
ad22f9686e | |||
39175c471f | |||
aa9ee3ae3f | |||
50ffeeee8b | |||
f54e270433 | |||
08ec2abb2e | |||
c4b1ce10bd | |||
1ecc2e2ec9 | |||
b19e4deacb | |||
dfc1c46ece | |||
e474eea44f | |||
b03c6cd3c0 | |||
a6275942f3 | |||
d8389ffda6 | |||
075a3a02c8 | |||
dc41624aba | |||
4ae346bbc5 | |||
d922d757be | |||
eb143c10f8 | |||
e1e3a2e21e | |||
c2beb74b90 | |||
e70abe7b49 | |||
ee73989a21 | |||
7835ed019c | |||
3292532517 | |||
4e29a160b9 | |||
b1be22cf77 | |||
f59d83b8bf | |||
88c4282493 | |||
02ab183b96 | |||
735e301c46 | |||
e983c16e61 | |||
132eb67cec | |||
4c39e92496 | |||
2689b91d91 | |||
478bb6e10e | |||
3c3c7b42d9 | |||
3f97464c27 | |||
d4fbb8fda2 | |||
38e7f69054 | |||
3ed3cd689e | |||
fc6229660e | |||
b125850bbb | |||
350c0e59b1 | |||
2612bf706c | |||
b84235fcb7 | |||
4aa8ae8a01 | |||
9044b17f18 | |||
106f5a43a1 | |||
915ab7834c | |||
dc61cc1373 | |||
4c2c83f9f2 | |||
862f64c45c | |||
06c18a67f8 | |||
eb2a675b8f | |||
b12333b419 | |||
1543b5fbf7 | |||
86378d648e | |||
633f1e679a | |||
4360660e39 | |||
827ff0905c | |||
9cb039ab8b | |||
1b3fe1570b | |||
4f0adfb553 | |||
01848af60d | |||
dc54fee21c | |||
77a9177c31 | |||
f1165249fb | |||
fd135a078f | |||
eedd7378f1 | |||
e1ade3ea3b | |||
3760758d4e | |||
0baf10bfc6 | |||
e72b298001 | |||
f77c8f2c85 | |||
9c2ef3ae46 | |||
1a40a5ea30 | |||
15f75eca35 | |||
8924ad016f | |||
9c478f0c39 | |||
cee3323340 | |||
503175a63e | |||
46ff3eb1f4 | |||
04634b402b | |||
83f05f5325 | |||
00d05d4f04 | |||
542bd2653d | |||
fd36e236bc | |||
c4bf80ee1d | |||
2cea910cd8 | |||
4fc958a89d | |||
08c50b219d | |||
3a472c2084 | |||
4063b1564b | |||
b70598c357 | |||
56525c76cc | |||
8ac31eb612 | |||
f61bb8a80f | |||
df165d9fc6 | |||
fb732aaab5 | |||
9dfce3363c | |||
6590e41581 | |||
ec93b32f82 | |||
6c091d7f99 | |||
b3b9e80f86 | |||
ea91a3defa | |||
4ed6f6e07a | |||
2c7cf9410a | |||
975c39b910 | |||
f80bb83f3b | |||
21ccb35814 | |||
6b0be3fe4f | |||
1422fce0db | |||
9d2d1fffdf | |||
60691e3a49 | |||
3f75659921 | |||
b43a4708eb | |||
b923dadf19 | |||
e57370608e | |||
7da3c88d82 | |||
70e0f2d6e0 | |||
b03d46129c | |||
9d308c1b9d | |||
1f16a481c7 | |||
181a88db7e | |||
697ebcd840 | |||
70e775452a | |||
dec4cfd273 | |||
7da9dbb7a9 | |||
5c22605c3d | |||
4614c62130 | |||
fe2a9cbfcc | |||
c66ea5871f | |||
6fe93a542d | |||
d2bfda8308 | |||
0a23b4d6a6 | |||
81302d1e69 | |||
91fb925e1c | |||
cc9fbc3734 | |||
a5ed4fe7d8 | |||
042fb29bf1 | |||
2b46c0f6bd | |||
7cb46e03ea | |||
093216b300 | |||
b24e7a708d | |||
6978c83372 | |||
58cf4ccba9 | |||
d11b03ad1e | |||
b3cdac0ea2 | |||
b03b732a19 | |||
e9bdfe5276 | |||
b8eb1e0149 | |||
428b3c5103 | |||
25dbb38e1e | |||
8647354545 | |||
9d3203eb71 | |||
e607287986 | |||
b3a1643428 | |||
8179a114c3 | |||
390d72525e | |||
5e0422ff97 | |||
06b1bf9b21 | |||
1cd181a946 | |||
6f56be00ee | |||
d51297c62b | |||
e630b6e23f | |||
b07cc69819 | |||
b60a47252d | |||
c48da5375b | |||
7346503b96 | |||
46caf30af4 | |||
3443ca0a51 | |||
1149d38ef4 | |||
c81e77bb16 | |||
0c87b91f95 | |||
49142ec930 | |||
c776ac0002 | |||
568f641d8e | |||
9548743659 | |||
0882fe63f9 | |||
d674ec9d6e | |||
e582010b1f | |||
0decc801d5 | |||
6cee861d4b | |||
32f92a1431 | |||
328bd6f995 | |||
8ed342548e | |||
c213502e2c | |||
485db8aef5 | |||
aba62cac02 | |||
4507d79106 | |||
80f57a0284 | |||
6a5b3283fc | |||
f3461db9c7 | |||
0c28d39c7d | |||
fee02ed013 | |||
d88bf38702 | |||
e8937f9f13 | |||
3278d97b30 | |||
94ffea3b73 | |||
14bad4a4f9 | |||
eb1edeed0b | |||
d428afbfc0 | |||
36885cddae | |||
b591d802c5 | |||
b14b395cec | |||
0e2bbd51ce | |||
9573b31cea | |||
e6a44c77b9 | |||
5ce690af3b | |||
546d5dc9a3 | |||
645026f596 | |||
252e372ecb | |||
c9c95e1684 | |||
7c8bd6dec3 | |||
e55d8e83be | |||
3a15a4500f | |||
a655d38e4b | |||
8927845acd | |||
65496dd1d2 | |||
33af6f8d98 | |||
f5bc79f606 | |||
3fc9130412 | |||
e11d89cecd | |||
b71f390686 | |||
fcc60a3011 | |||
cb86812995 | |||
d18009e308 | |||
0b8615f1be | |||
fb183beac1 | |||
1812ca8e98 | |||
e599a58f10 | |||
d8c979c633 | |||
28b2809d9c | |||
3a2b948fb3 | |||
8b80898ad6 | |||
a7f3bbaa59 | |||
34029cf0cb | |||
d56c9b37a6 | |||
6241d12f49 | |||
9cc2279b2f | |||
85182b4426 | |||
7a652be8b4 | |||
730cad9bcd | |||
ce9576a096 | |||
72ecbc58fa | |||
1f03280e44 | |||
fbe6a2a52e | |||
ad641c4b14 | |||
e2250a1f05 | |||
0d0d7277d1 | |||
8927ac12fc | |||
1455a98541 | |||
9f3cf15ea8 | |||
90b4c400ce | |||
aa1a4b8185 | |||
23b5e32ec6 | |||
66ae128156 | |||
eb440203ae | |||
948dc37c77 | |||
632177847c | |||
8788b95b21 | |||
108875cb25 | |||
1c44a4a510 | |||
91eba2f11b | |||
5be4c6ee5a | |||
54bdb38619 | |||
4f3cfd2dbd | |||
4321cbbb79 | |||
1a45a2d833 | |||
f9565520fd | |||
d701bf8d47 | |||
33daabd87d | |||
b2bd498a4f | |||
3807daaf45 | |||
b7127aa718 | |||
33b4cfab1b | |||
e53be8491f | |||
6e30689e5e | |||
4bb690a819 | |||
ae584c68b2 | |||
7856c3b759 | |||
608163ebbe | |||
3b93d471b1 | |||
e8cd3315e0 | |||
77b2daeb56 | |||
b70d56a6b3 | |||
72fab9d7da | |||
228d4ce2d7 | |||
ce9ad7208c | |||
145d9890ca | |||
256368661c | |||
15de7eec4b | |||
fdc4155fea | |||
a4efd4c21a | |||
715054b3b4 | |||
907aa0914d | |||
859b360101 | |||
0d9fa12aa6 | |||
3facdc63f6 | |||
5423acd697 | |||
fea5ddce84 | |||
b6e1f95f62 | |||
e94ef7422a | |||
ded6f3a3c9 | |||
faaa55709b | |||
393b019394 | |||
b7d529ac6b | |||
26e81a5585 | |||
c3b2cc2def | |||
89e278e967 | |||
5c1b446a9e | |||
54d6f56c0e | |||
ce2f5ccec1 | |||
dcb69eaaa1 | |||
b1733ed82c | |||
cdc4be5256 | |||
cb61e12209 | |||
76e9f915b7 | |||
7825392dc5 | |||
553cee40bd | |||
89e4b06d8a | |||
47baba7c49 | |||
25054a1ee1 | |||
00dad65868 | |||
8e47cb7560 | |||
015ac9cb2e | |||
6eedec544f | |||
864019147a | |||
f7fefa2a1f | |||
c1d0b219ac | |||
26b15f8280 | |||
99ad0e4521 | |||
f00446c3ab | |||
e192e93d0b | |||
cc650688ad | |||
4908f58ea3 | |||
60de301d1f | |||
328a52eaaa | |||
37d50a375a | |||
72727d6d7f | |||
1fec028b57 | |||
3fe7d6d06a | |||
75a207b54d | |||
93675ab566 | |||
216dcaedef | |||
d2c179a6aa | |||
a8434508d7 | |||
b290c9372b | |||
842540fcc1 | |||
8b9c75bb07 | |||
e0a31fdd3f | |||
a729a63410 | |||
1ed20a224a | |||
0b4d289c85 | |||
a7853cdd68 | |||
d574738487 | |||
851fbc63b8 | |||
93a331152d | |||
7f923e81e1 | |||
31a8d42f8a | |||
1561ca793c | |||
770a0ffec6 | |||
1015d853f3 | |||
b36731a3d9 | |||
58f88acce6 | |||
8b9dcd7849 | |||
8e2c98f5bc | |||
3899e96e81 | |||
71bd1a7838 | |||
8916f28480 | |||
3e00e24170 | |||
34b5b7e8b2 | |||
bc9a5ef5f2 | |||
23fbdffd78 | |||
36686c4409 | |||
6c05aac1a4 | |||
ca54dc0ae2 | |||
19174bc890 | |||
a705b07516 | |||
9891ed94d9 | |||
e5875d57c8 | |||
ebfcf12ef1 | |||
89782cd9be | |||
5652ca0d38 | |||
b4919e62f4 | |||
bcd091a8dd | |||
dff892a1b0 | |||
37f823fd4a | |||
6a7259a48d | |||
54c727bfe3 | |||
cd503a0d89 | |||
8792bd705a | |||
44b60d95ad | |||
cbe5e0fa9f | |||
8854c2c573 | |||
54d0da5221 | |||
5e0488f509 | |||
22c81b2b3f | |||
f5a7b0be75 | |||
032860a124 | |||
0bd2709266 | |||
1884cf8a78 | |||
9f9048e805 | |||
a18d5f79fc | |||
ec1d6932d4 | |||
33ba22e0f6 | |||
f1bec9eda8 | |||
760c4206b4 | |||
def1674ee7 | |||
330045d332 | |||
ab81a9c869 | |||
bf45543e2f | |||
aa738488be | |||
bfd89be28b | |||
b899890a46 | |||
34c788f3a0 | |||
19962553a5 | |||
336749e0ae | |||
06ff87a86c | |||
3468956bc9 | |||
acb748ed77 | |||
fcd4b15cdf | |||
a3e207e706 | |||
03b37c307f | |||
7202e6b56e | |||
1ad72e98a9 | |||
da66351f86 | |||
140a30f6f4 | |||
717666e5d4 | |||
7980b6e377 | |||
2b9fee0cff | |||
0b714a0ce7 | |||
8a557b560b | |||
2fc11e125a | |||
045d40e5a6 | |||
23a1e16489 | |||
5fa1ddda5a | |||
dba7ae68c7 | |||
0681e43c79 | |||
324604edce | |||
4834a1927b | |||
ffef0494ce | |||
86be4492a3 | |||
6229f991c8 | |||
4c6d309384 |
52
.drone.star
Normal file
52
.drone.star
Normal file
@ -0,0 +1,52 @@
|
||||
# Use, modification, and distribution are
|
||||
# subject to the Boost Software License, Version 1.0. (See accompanying
|
||||
# file LICENSE.txt)
|
||||
#
|
||||
# Copyright Rene Rivera 2020.
|
||||
|
||||
# For Drone CI we use the Starlark scripting language to reduce duplication.
|
||||
# As the yaml syntax for Drone CI is rather limited.
|
||||
#
|
||||
#
|
||||
globalenv={}
|
||||
linuxglobalimage="cppalliance/droneubuntu1604:1"
|
||||
windowsglobalimage="cppalliance/dronevs2019"
|
||||
|
||||
def main(ctx):
|
||||
return [
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 Job 0", "g++", packages="", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'b6589fc6ab'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98 Job 1", "g++", packages="g++-4.4", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.4', 'CXXSTD': '98', 'DRONE_JOB_UUID': '356a192b79'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x Job 2", "g++", packages="g++-4.6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.6', 'CXXSTD': '03,0x', 'DRONE_JOB_UUID': 'da4b9237ba'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11 Job 3", "g++-4.7", packages="g++-4.7", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.7', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '77de68daec'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11 Job 4", "g++-4.8", packages="g++-4.8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.8', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '1b64538924'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11 Job 5", "g++-4.9", packages="g++-4.9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.9', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'ac3478d69a'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z Job 6", "g++-5", packages="g++-5", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-5', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'c1dfd96eea'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z Job 7", "g++-6", packages="g++-6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-6', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '902ba3cda1'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17 Job 8", "g++-7", packages="g++-7", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-7', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': 'fe5dbbcea5'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17 Job 9", "g++-8", packages="g++-8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-8', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': '0ade7c2cf9'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17 Job 10", "g++-9", packages="g++-9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-9', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': 'b1d5781111'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,1 Job 11", "g++-10", packages="g++-10", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1804:1", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-10', 'CXXSTD': '03,11,14,17,2a', 'DRONE_JOB_UUID': '17ba079149'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++ CXXSTD=03,11 Job 12", "clang++", packages="", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '7b52009b64'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=/usr/bin/clang++ CXXST Job 13", "/usr/bin/clang++", packages="clang-3.3", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'bd307a3ec3'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=/usr/bin/clang++ CXXST Job 14", "/usr/bin/clang++", packages="clang-3.4", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'fa35e19212'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03, Job 15", "clang++", packages="clang-3.5", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.5', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'f1abd67035'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03, Job 16", "clang++", packages="clang-3.6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.6', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '1574bddb75'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03, Job 17", "clang++", packages="clang-3.7", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.7', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '0716d9708d'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03, Job 18", "clang++-3.8", packages="clang-3.8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.8', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '9e6a55b6b4'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03, Job 19", "clang++-3.9", packages="clang-3.9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.9', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'b3f0c7f6bb'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03, Job 20", "clang++-4.0", packages="clang-4.0", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-4.0', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '91032ad7bb'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03, Job 21", "clang++-5.0", packages="clang-5.0", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-5.0', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '472b07b9fc'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03, Job 22", "clang++-6.0", packages="clang-6.0", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-6.0', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': '12c6fc06c9'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11 Job 23", "clang++-7", packages="clang-7", llvm_os="xenial", llvm_ver="7", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-7', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': 'd435a6cdd7'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11 Job 24", "clang++-8", packages="clang-8", llvm_os="xenial", llvm_ver="8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-8', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': '4d134bc072'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11 Job 25", "clang++-9", packages="clang-9", llvm_os="xenial", llvm_ver="9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-9', 'CXXSTD': '03,11,14,17,2a', 'DRONE_JOB_UUID': 'f6e1126ced'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,1 Job 26", "clang++-10", packages="clang-10", llvm_os="xenial", llvm_ver="10", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-10', 'CXXSTD': '03,11,14,17,2a', 'DRONE_JOB_UUID': '887309d048'}, globalenv=globalenv),
|
||||
linux_cxx("TOOLSET=clang COMPILER=clang++-libc++ CXXSTD= Job 27", "clang++-libc++", packages="libc++-dev", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-libc++', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'bc33ea4e26'}, globalenv=globalenv),
|
||||
osx_cxx("TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,1 Job 28", "clang++", packages="", buildtype="boost", buildscript="drone", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '0a57cb53ba'}, globalenv=globalenv),
|
||||
linux_cxx("CMAKE_TEST=1 Job 29", "g++", packages="", buildtype="cmake-test-script", buildscript="drone", image=linuxglobalimage, environment={'CMAKE_TEST': '1', 'DRONE_JOB_UUID': '7719a1c782'}, globalenv=globalenv),
|
||||
linux_cxx("CMAKE_SUBDIR_TEST=1 Job 30", "g++", packages="", buildtype="cmake-subdir-script", buildscript="drone", image=linuxglobalimage, environment={'CMAKE_SUBDIR_TEST': '1', 'DRONE_JOB_UUID': '22d200f867'}, globalenv=globalenv),
|
||||
linux_cxx("CMAKE_INSTALL_TEST=1 Job 31", "g++", packages="", buildtype="cmake-install-script", buildscript="drone", image=linuxglobalimage, environment={'CMAKE_INSTALL_TEST': '1', 'DRONE_JOB_UUID': '632667547e'}, globalenv=globalenv),
|
||||
]
|
||||
|
||||
# from https://github.com/boostorg/boost-ci
|
||||
load("@boost_ci//ci/drone/:functions.star", "linux_cxx","windows_cxx","osx_cxx","freebsd_cxx")
|
88
.drone/drone.sh
Executable file
88
.drone/drone.sh
Executable file
@ -0,0 +1,88 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
export TRAVIS_BUILD_DIR=$(pwd)
|
||||
export DRONE_BUILD_DIR=$(pwd)
|
||||
export TRAVIS_BRANCH=$DRONE_BRANCH
|
||||
export VCS_COMMIT_ID=$DRONE_COMMIT
|
||||
export GIT_COMMIT=$DRONE_COMMIT
|
||||
export REPO_NAME=$DRONE_REPO
|
||||
export PATH=~/.local/bin:/usr/local/bin:$PATH
|
||||
|
||||
if [ "$DRONE_JOB_BUILDTYPE" == "boost" ]; then
|
||||
|
||||
echo '==================================> INSTALL'
|
||||
|
||||
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||||
cd ..
|
||||
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
git submodule update --init tools/boostdep
|
||||
cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
|
||||
python tools/boostdep/depinst/depinst.py preprocessor
|
||||
./bootstrap.sh
|
||||
./b2 headers
|
||||
|
||||
echo '==================================> SCRIPT'
|
||||
|
||||
echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
|
||||
./b2 libs/preprocessor/test -j 3 toolset=$TOOLSET cxxstd=$CXXSTD $ADDRMD
|
||||
|
||||
elif [ "$DRONE_JOB_BUILDTYPE" == "cmake-install-script" ]; then
|
||||
|
||||
echo '==================================> INSTALL'
|
||||
|
||||
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||||
cd ..
|
||||
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
git submodule update --init tools/boostdep
|
||||
cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
|
||||
python tools/boostdep/depinst/depinst.py preprocessor
|
||||
./bootstrap.sh
|
||||
./b2 headers
|
||||
|
||||
echo '==================================> SCRIPT'
|
||||
|
||||
mkdir __build__ && cd __build__
|
||||
cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
cmake --build . --target install
|
||||
cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
cmake --build .
|
||||
cmake --build . --target check
|
||||
|
||||
elif [ "$DRONE_JOB_BUILDTYPE" == "cmake-subdir-script" ]; then
|
||||
|
||||
echo '==================================> INSTALL'
|
||||
|
||||
true
|
||||
|
||||
echo '==================================> SCRIPT'
|
||||
|
||||
cd test/cmake_subdir_test && mkdir __build__ && cd __build__
|
||||
cmake ..
|
||||
cmake --build .
|
||||
cmake --build . --target check
|
||||
|
||||
elif [ "$DRONE_JOB_BUILDTYPE" == "cmake-test-script" ]; then
|
||||
|
||||
echo '==================================> INSTALL'
|
||||
|
||||
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||||
cd ..
|
||||
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
cd boost-root
|
||||
git submodule update --init tools/boostdep
|
||||
cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
|
||||
python tools/boostdep/depinst/depinst.py preprocessor
|
||||
./bootstrap.sh
|
||||
./b2 headers
|
||||
|
||||
echo '==================================> SCRIPT'
|
||||
|
||||
mkdir __build__ && cd __build__
|
||||
cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
|
||||
ctest --output-on-failure -R boost_preprocessor
|
||||
|
||||
fi
|
348
.travis.yml
Normal file
348
.travis.yml
Normal file
@ -0,0 +1,348 @@
|
||||
# Copyright 2016-2019 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
|
||||
language: cpp
|
||||
|
||||
dist: xenial
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- develop
|
||||
- /feature\/.*/
|
||||
|
||||
env:
|
||||
matrix:
|
||||
- BOGUS_JOB=true
|
||||
|
||||
matrix:
|
||||
|
||||
exclude:
|
||||
- env: BOGUS_JOB=true
|
||||
|
||||
include:
|
||||
- os: linux
|
||||
compiler: g++
|
||||
env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11
|
||||
|
||||
- os: linux
|
||||
compiler: g++-4.4
|
||||
env: TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-4.4
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-4.6
|
||||
env: TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-4.6
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-4.7
|
||||
env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-4.7
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-4.8
|
||||
env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-4.8
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- os: linux
|
||||
compiler: g++-4.9
|
||||
env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-4.9
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-5
|
||||
env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-5
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-6
|
||||
env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-6
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: g++-7
|
||||
env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-7
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-8
|
||||
env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-8
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: g++-9
|
||||
env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-9
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
dist: bionic
|
||||
compiler: g++-10
|
||||
env: TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,17,2a
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- g++-10
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: /usr/bin/clang++
|
||||
env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.3
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: /usr/bin/clang++
|
||||
env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.4
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-3.5
|
||||
env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.5
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-3.6
|
||||
env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.6
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-3.7
|
||||
env: TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.7
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-3.8
|
||||
env: TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.8
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-3.9
|
||||
env: TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-3.9
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-4.0
|
||||
env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-4.0
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-5.0
|
||||
env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-5.0
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-6.0
|
||||
env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-6.0
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-7
|
||||
env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-7
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-7
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-8
|
||||
env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-8
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-xenial-8
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-9
|
||||
env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11,14,17,2a
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-9
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main'
|
||||
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-10
|
||||
env: TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,11,14,17,2a
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-10
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-10 main'
|
||||
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
|
||||
|
||||
- os: linux
|
||||
dist: trusty
|
||||
compiler: clang++-libc++
|
||||
env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- libc++-dev
|
||||
|
||||
- os: osx
|
||||
compiler: clang++
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
|
||||
- os: linux
|
||||
env: CMAKE_TEST=1
|
||||
script:
|
||||
- mkdir __build__ && cd __build__
|
||||
- cmake -DBUILD_TESTING=ON -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
|
||||
- cmake --build . --target tests
|
||||
- ctest --output-on-failure
|
||||
|
||||
- os: linux
|
||||
env: CMAKE_SUBDIR_TEST=1
|
||||
install: true
|
||||
script:
|
||||
- cd test/cmake_subdir_test && mkdir __build__ && cd __build__
|
||||
- cmake ..
|
||||
- cmake --build .
|
||||
- cmake --build . --target check
|
||||
|
||||
- os: linux
|
||||
env: CMAKE_INSTALL_TEST=1
|
||||
script:
|
||||
- pip install --user cmake
|
||||
- mkdir __build__ && cd __build__
|
||||
- cmake -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
- cmake --build . --target install
|
||||
- cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
- cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
- cmake --build .
|
||||
- cmake --build . --target check
|
||||
|
||||
install:
|
||||
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||||
- cd ..
|
||||
- git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
- cd boost-root
|
||||
- git submodule update --init tools/boostdep
|
||||
- cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
|
||||
- python tools/boostdep/depinst/depinst.py preprocessor
|
||||
- ./bootstrap.sh
|
||||
- ./b2 headers
|
||||
|
||||
script:
|
||||
- |-
|
||||
echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
|
||||
- ./b2 libs/preprocessor/test -j 3 toolset=$TOOLSET cxxstd=$CXXSTD $ADDRMD
|
||||
|
||||
notifications:
|
||||
email:
|
||||
on_success: always
|
18
CMakeLists.txt
Normal file
18
CMakeLists.txt
Normal file
@ -0,0 +1,18 @@
|
||||
# Copyright 2019 Peter Dimov
|
||||
# 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
|
||||
|
||||
cmake_minimum_required(VERSION 3.5...3.16)
|
||||
|
||||
project(boost_preprocessor VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX)
|
||||
|
||||
add_library(boost_preprocessor INTERFACE)
|
||||
add_library(Boost::preprocessor ALIAS boost_preprocessor)
|
||||
|
||||
target_include_directories(boost_preprocessor INTERFACE include)
|
||||
|
||||
if(BUILD_TESTING)
|
||||
|
||||
add_subdirectory(test)
|
||||
|
||||
endif()
|
123
appveyor.yml
Normal file
123
appveyor.yml
Normal file
@ -0,0 +1,123 @@
|
||||
# Copyright 2017 Edward Diener
|
||||
# Copyright 2018 Mike Dev
|
||||
# Copyright 2019 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
|
||||
version: 1.0.{build}-{branch}
|
||||
|
||||
shallow_clone: true
|
||||
|
||||
configuration:
|
||||
- boost_build_test
|
||||
- cmake_test
|
||||
- cmake_subdir_test
|
||||
- cmake_install_test
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- develop
|
||||
- /feature\/.*/
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
TOOLSET: msvc-10.0
|
||||
ADDRMD: 32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
TOOLSET: msvc-11.0
|
||||
ADDRMD: 32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
TOOLSET: msvc-12.0
|
||||
ADDRMD: 32,64
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
TOOLSET: msvc-14.0
|
||||
ADDRMD: 32,64
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
TOOLSET: msvc-14.1
|
||||
ADDRMD: 32,64
|
||||
CXXSTD: 14,17,latest
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||
TOOLSET: msvc-14.2
|
||||
ADDRMD: 32,64
|
||||
CXXSTD: 14,17,latest
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||
TOOLSET: msvc-14.2
|
||||
ADDRMD: 32,64
|
||||
CXXSTD: 14,17,latest
|
||||
PREPROCESSOR: /Zc:preprocessor
|
||||
|
||||
matrix:
|
||||
exclude:
|
||||
- configuration: cmake_test
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
- configuration: cmake_test
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
- configuration: cmake_test
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||
|
||||
build: off
|
||||
|
||||
install:
|
||||
- set BOOST_BRANCH=develop
|
||||
- if "%APPVEYOR_REPO_BRANCH%" == "master" set BOOST_BRANCH=master
|
||||
- cd ..
|
||||
- git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
- cd boost-root
|
||||
- git submodule update --init tools/build
|
||||
- git submodule update --init libs/config
|
||||
- git submodule update --init tools/boostdep
|
||||
- git submodule update --init tools/boost_install
|
||||
- git submodule update --init libs/headers
|
||||
- xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\preprocessor\
|
||||
- python tools/boostdep/depinst/depinst.py preprocessor
|
||||
|
||||
for:
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- configuration: boost_build_test
|
||||
|
||||
test_script:
|
||||
- bootstrap
|
||||
- b2 -d0 headers
|
||||
- if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
|
||||
- if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
|
||||
- if not "%PREPROCESSOR%" == "" set PREPROCESSOR=cflags="%PREPROCESSOR%"
|
||||
- b2 libs/preprocessor/test -j3 toolset=%TOOLSET% %CXXSTD% %ADDRMD% %PREPROCESSOR% variant=debug,release
|
||||
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- configuration: cmake_test
|
||||
|
||||
test_script:
|
||||
- mkdir __build__ && cd __build__
|
||||
- cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
|
||||
- ctest --output-on-failure -R boost_preprocessor -C Debug
|
||||
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- configuration: cmake_subdir_test
|
||||
|
||||
test_script:
|
||||
- cd libs/preprocessor/test/cmake_subdir_test && mkdir __build__ && cd __build__
|
||||
- cmake ..
|
||||
- cmake --build .
|
||||
- cmake --build . --target check
|
||||
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- configuration: cmake_install_test
|
||||
|
||||
test_script:
|
||||
- mkdir __build__ && cd __build__
|
||||
- cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
|
||||
- cmake --build . --target install
|
||||
- cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
- cmake -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
|
||||
- cmake --build .
|
||||
- cmake --build . --target check
|
2494
doc/AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html
Normal file
2494
doc/AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,40 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<title>Boost.Preprocessor - Acknowledgements</title>
|
||||
</head>
|
||||
<body bgcolor="#FFFFFF" link="#0000ff" vlink="#800080">
|
||||
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
|
||||
"header">
|
||||
<tr>
|
||||
<td valign="top" width="300">
|
||||
<h3><a href="../../../index.htm"><img height="86" width="277" alt="C++ Boost" src="../../../c++boost.gif" border="0"></a></h3>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<h1 align="center">Boost.Preprocessor</h1>
|
||||
<h2 align="center">Acknowledgements</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr>
|
||||
<p>The original idea of passing two extra parameters to REPEAT, which makes it
|
||||
possible to create preprocessor code on top of it, was due to Aleksey Gurtovoy.
|
||||
The invokeable IDENTITY macro was also invented by him. He also suggested the
|
||||
name for the library. Many thanks to Aleksey for his insights!</p>
|
||||
<p>Thanks to everyone who participated in the review: David Abrahams, Beman Dawes,
|
||||
Ronald Garcia, Douglas Gregor, Aleksey Gurtovoy, Jeremy Siek, and Daryle Walker.</p>
|
||||
<p>Thanks to Chris Little and Mat Marcus for providing help with MWCW.</p>
|
||||
<p>The PREPROCESSOR library has been developed by Vesa Karvonen. </p>
|
||||
<hr>
|
||||
<p>Revised
|
||||
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
|
||||
<!--webbot bot="Timestamp" endspan i-checksum="39359" -->
|
||||
</p>
|
||||
<p><i>© Copyright <a href="http://www.housemarque.com">Housemarque Oy</a> 2002</i></p>
|
||||
|
||||
<p><i>Permission to copy, use, modify, sell and distribute this document is granted
|
||||
provided this copyright notice appears in all copies. This document is provided
|
||||
"as is" without express or implied warranty, and with no claim as to its suitability
|
||||
for any purpose.</i></p>
|
||||
</body>
|
||||
</html>
|
58
doc/acknowledgements.html
Normal file
58
doc/acknowledgements.html
Normal file
@ -0,0 +1,58 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>acknowledgements.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<h4>Acknowledgements</h4>
|
||||
<div>
|
||||
The following are a few acknowledgements of people that contributed to
|
||||
or were instrumental in the development of the library by Vesa Karnoven and myself.
|
||||
</div>
|
||||
<h4>Vesa Karvonen</h4>
|
||||
<div>
|
||||
The original idea of passing two extra parameters to REPEAT, which makes it possible to create preprocessor code on top of it,
|
||||
was due to Aleksey Gurtovoy.
|
||||
The invokeable IDENTITY macro was invented by him.
|
||||
He also suggested the name for the library.
|
||||
Many thanks to Aleksey for his insights!
|
||||
</div>
|
||||
<div>
|
||||
Thanks to everyone who participated in the review: David Abrahams, Beman Dawes, Ronald Garcia, Douglas Gregor, Aleksey Gurtovoy, Jeremy Siek, and Daryle Walker.
|
||||
</div>
|
||||
<div>
|
||||
Thanks to Chris Little and Mat Marcus for providing help with MWCW.
|
||||
</div>
|
||||
<div>
|
||||
The original automatic recursion technique, which makes many of the library
|
||||
primitives easier to use, was invented by Paul Mensonides.
|
||||
</div>
|
||||
<div>
|
||||
The PREPROCESSOR library has been developed by Vesa Karvonen.
|
||||
</div>
|
||||
<h4>Paul Mensonides</h4>
|
||||
<div>
|
||||
Thanks to Vesa Karvonen for the original conception of the library.
|
||||
His work, his help, and his opinions are all much appreciated.
|
||||
</div>
|
||||
<div>
|
||||
Thanks also to David Abrahams for his observations and continued support.
|
||||
</div>
|
||||
<div>
|
||||
The help of several other Boost developers is also greatly appreciated.
|
||||
In particular, thanks to Aleksey Gurtovoy for his suggestions and to Ralf W. Grosse-Kunstleve for providing
|
||||
access to several compilers for testing.
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,47 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<title>Boost.Preprocessor - Bibliography</title>
|
||||
</head>
|
||||
<body bgcolor="#FFFFFF" link="#0000ff" vlink="#800080">
|
||||
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
|
||||
"header">
|
||||
<tr>
|
||||
<td valign="top" width="300">
|
||||
<h3><a href="../../../index.htm"><img height="86" width="277" alt="C++ Boost" src="../../../c++boost.gif" border="0"></a></h3>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<h1 align="center">Boost.Preprocessor</h1>
|
||||
<h2 align="center">Bibliography</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<hr>
|
||||
|
||||
<table>
|
||||
<tr><td><b>[Stroustrup]</b></td><td><a name="[Stroustrup]">Stroustrup: <i>The Design and Evolution of C++</i>, ISBN 0201543303</a></td></tr>
|
||||
<tr><td><b>[Czarnecki]</b></td><td><a name="[Czarnecki]">Czarnecki, Eisenecker: <i>Generative Programming</i>, ISBN 0201309777</a></td></tr>
|
||||
<tr><td><b>[Barton]</b></td><td><a name="[Barton]">Barton, Nackman: <i>Scientific and Engineering C++</i>, ISBN 0201533936</a></td></tr>
|
||||
<tr><td><b>[McConnell]</b></td><td><a name="[McConnell]">McConnell: <i>Code Complete</i>, ISBN 1556154844</a></td></tr>
|
||||
<tr><td><b>[Std]</b></td><td><a name="[Std]">ISO/IEC 14882:1998 <i>Programming languages - C++</i></a></td></tr>
|
||||
<tr><td><b>[Thompson]</b></td><td><a name="[Thompson]">Thompson: <i>Haskell: The Craft of Functional Programming</i>, ISBN 0201342758</a></td></tr>
|
||||
<tr><td><b>[Okasaki]</b></td><td><a name="[Okasaki]">Okasaki: <i>Purely Functional Data Structures</i>, ISBN 0521663504</a></td></tr>
|
||||
<tr><td><b>[Cousineau]</b></td><td><a name="[Cousineau]">Cousineau, Mauny: <i>The Functional Approach to Programming</i>, ISBN 0521576814</a></td></tr>
|
||||
<tr><td><b>[Abelson]</b></td><td><a name="[Abelson]">Abelson, Sussman, Sussman: <i>Structure and Interpretation of Computer Programs</i>, ISBN 0262011530</a></td></tr>
|
||||
</table>
|
||||
|
||||
<hr>
|
||||
|
||||
<p>Revised
|
||||
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
|
||||
<!--webbot bot="Timestamp" endspan i-checksum="39359" -->
|
||||
</p>
|
||||
<p><i>© Copyright <a href="http://www.housemarque.com">Housemarque Oy</a> 2002</i></p>
|
||||
|
||||
<p><i>Permission to copy, use, modify, sell and distribute this document is granted
|
||||
provided this copyright notice appears in all copies. This document is provided
|
||||
"as is" without express or implied warranty, and with no claim as to its suitability
|
||||
for any purpose.</i></p>
|
||||
</body>
|
||||
</html>
|
58
doc/bibliography.html
Normal file
58
doc/bibliography.html
Normal file
@ -0,0 +1,58 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>bibliography.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<h4>Bibliography</h4>
|
||||
<table style="margin-left: 20px">
|
||||
<tr>
|
||||
<td><b><a name="stroustrup"></a>[Stroustrup]</b></td>
|
||||
<td>Stroustrup: <i>The Design and Evolution of C++</i>, ISBN 0201543303</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><a name="czarnecki"></a>[Czarnecki]</b></td>
|
||||
<td>Czarnecki, Eisenecker: <i>Generative Programming</i>, ISBN 0201309777</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><b><a name="barton"></a>[Barton]</b></td>
|
||||
<td>Barton, Nackman: <i>Scientific and Engineering C++</i>, ISBN 0201533936</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><a name="mcconnell"></a>[McConnell]</b></td>
|
||||
<td>McConnell: <i>Code Complete</i>, ISBN 1556154844</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><a name="std"></a>[Std]</b></td>
|
||||
<td>ISO/IEC 14882:1998 <i>Programming Languages - C++</i></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>[Thompson]</b></td>
|
||||
<td>Thompson: <i>Haskell: The Craft of Functional Programming</i>, ISBN 0201342758</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>[Okasaki]</b></td>
|
||||
<td>Okasaki: <i>Purely Functional Data Structures</i>, ISBN 0521663504</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>[Cousineau]</b></td>
|
||||
<td>Cousineau, Mauny: <i>The Functional Approach to Programming</i>, ISBN 0521576814</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>[Abelson]</b></td>
|
||||
<td>Abelson, Sussman, Sussman: <i>Structure and Interpretation of Computer Programs</i>, ISBN 0521576814</td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
37
doc/contents.html
Normal file
37
doc/contents.html
Normal file
@ -0,0 +1,37 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252"
|
||||
http-equiv="content-type">
|
||||
<title>contents.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
<style>
|
||||
a, a:link, a:visited { color: black; font-weight: bold; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h4><a href="index.html" target="_top">Introduction</a></h4>
|
||||
<h4><a
|
||||
href="AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html"
|
||||
target="_top">Basic Intro</a></h4>
|
||||
<a href="topics.html"> </a>
|
||||
<h4><a href="topics.html">Topics</a></h4>
|
||||
<a href="topics.html"> </a>
|
||||
<h4><a href="terms.html">Terminology</a></h4>
|
||||
<a href="terms.html"> </a>
|
||||
<h4><a href="data.html">Data Types</a></h4>
|
||||
<a href="data.html"> </a>
|
||||
<h4><a href="ref.html">Reference</a></h4>
|
||||
<a href="ref.html"> </a>
|
||||
<h4><a href="headers.html">Headers</a></h4>
|
||||
<a href="headers.html"> </a>
|
||||
<h4><a href="examples.html">Examples</a></h4>
|
||||
<a href="examples.html"> </a>
|
||||
<h4><a href="miscellanea.html">Miscellanea</a></h4>
|
||||
<a href="miscellanea.html">
|
||||
<!--
|
||||
<EFBFBD> Copyright Housemarque Oy 2002<30> Copyright Paul Mensonides 2002
|
||||
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)--> </a>
|
||||
</body>
|
||||
</html>
|
27
doc/data.html
Normal file
27
doc/data.html
Normal file
@ -0,0 +1,27 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>data.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
<base target="desc">
|
||||
</head>
|
||||
<body>
|
||||
<h4>
|
||||
Data Types <small><a href="contents.html" target="index">[back]</a></small>
|
||||
</h4>
|
||||
<ul>
|
||||
<li><a href="data/arrays.html">arrays</a></li>
|
||||
<li><a href="data/lists.html">lists</a></li>
|
||||
<li><a href="data/sequences.html">sequences</a></li>
|
||||
<li><a href="data/tuples.html">tuples</a></li>
|
||||
</ul>
|
||||
|
||||
<!--
|
||||
<EFBFBD> Copyright Housemarque Oy 2002
|
||||
<EFBFBD> Copyright Paul Mensonides 2002
|
||||
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)
|
||||
-->
|
||||
|
||||
</body>
|
||||
</html>
|
53
doc/data/arrays.html
Normal file
53
doc/data/arrays.html
Normal file
@ -0,0 +1,53 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
|
||||
<title>arrays.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<h4>Arrays</h4>
|
||||
<div> An <i>array</i> is a data structure consisting of a two-element <i>tuple</i>.
|
||||
The first element is the number of elements in the <i>array</i>.
|
||||
The second element is another <i>tuple</i> of the elements in the <i>array</i>.
|
||||
For example, </div>
|
||||
<div class="code"> (<i>3</i>, (<i>a</i>, <i>b</i>, <i>c</i>)) </div>
|
||||
<div> ...is an <i>array</i> of <i>3</i> elements--<i>a</i>, <i>b</i>, and
|
||||
<i>c</i>. </div>
|
||||
<div> The primary strength of <i>arrays</i> is that they store their own
|
||||
size. Because of this, access to elements does not require the
|
||||
size. It only requires that an element exists at a certain index. </div>
|
||||
<div> This allows macro parameters to be variable in size and allows data
|
||||
states to change size without the user explicitly keeping track of the
|
||||
size independently.<br>
|
||||
<br>
|
||||
An <i>array </i>can be empty and have no elements. An empty array has a
|
||||
0 size. The notation for an empty array is '(0,())'.<br>
|
||||
<br>
|
||||
<span style="font-style: italic;"> </span></div>
|
||||
<div>A <i>tuple </i>has all of the
|
||||
functionality as an <i>array</i>, knows its own size, and is easier
|
||||
syntactically to use. The only advantage an <i>array </i>has over a <i>tuple
|
||||
</i>is that an <i>array </i>can be empty while a <i>tuple </i>always
|
||||
has at least one element and therefore can never have a size of 0.<br>
|
||||
<br>
|
||||
Elements of an <i>array</i> can be extracted with <b>BOOST_PP_ARRAY_ELEM</b>,
|
||||
an <i>array's</i> size can be extracted with <b>BOOST_PP_ARRAY_SIZE</b>,
|
||||
and an <i>array</i> can be converted to the more primitive <i>tuple</i>
|
||||
data structure with <b>BOOST_PP_ARRAY_DATA</b>. </div>
|
||||
<h4>Primitives</h4>
|
||||
<ul>
|
||||
<li><a href="../ref/array_data.html">BOOST_PP_ARRAY_DATA</a></li>
|
||||
<li><a href="../ref/array_elem.html">BOOST_PP_ARRAY_ELEM</a></li>
|
||||
<li><a href="../ref/array_size.html">BOOST_PP_ARRAY_SIZE</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com"
|
||||
target="_top">Housemarque Oy</a> 2002</i> <br>
|
||||
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
42
doc/data/lists.html
Normal file
42
doc/data/lists.html
Normal file
@ -0,0 +1,42 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
|
||||
<title>lists.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<h4>Lists</h4>
|
||||
<div> A <i>list</i> is a simple cons-style list with a head and a
|
||||
tail. The head of a <i>list</i> is an element, and the tail is
|
||||
either another <i>list</i> or <b>BOOST_PP_NIL</b>. For example, </div>
|
||||
<div class="code"> (<i>a</i>, (<i>b</i>, (<i>c</i>, <b>BOOST_PP_NIL</b>)))
|
||||
</div>
|
||||
<div> ...is a <i>list</i> of <i>3</i> elements--<i>a</i>, <i>b</i>, and <i>c</i>.
|
||||
</div>
|
||||
<div> This allows macro parameters to be variable in size and allows data
|
||||
states to change size without the user explicitly keeping track of the
|
||||
size independently.<br>
|
||||
<br>
|
||||
A list can be empty and therefore have a size of 0. An empty list is
|
||||
represented by the notation <b>BOOST_PP_NIL.<br>
|
||||
<br>
|
||||
</b></div>
|
||||
<div> Elements of a <i>list</i> can be extracted with <b>BOOST_PP_LIST_FIRST</b>
|
||||
and <b>BOOST_PP_LIST_REST</b>. </div>
|
||||
<h4>Primitives</h4>
|
||||
<ul>
|
||||
<li><a href="../ref/list_first.html">BOOST_PP_LIST_FIRST</a></li>
|
||||
<li><a href="../ref/list_rest.html">BOOST_PP_LIST_REST</a></li>
|
||||
<li><a href="../ref/nil.html">BOOST_PP_NIL</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com"
|
||||
target="_top">Housemarque Oy</a> 2002</i> <br>
|
||||
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
60
doc/data/sequences.html
Normal file
60
doc/data/sequences.html
Normal file
@ -0,0 +1,60 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
|
||||
<title>sequences.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<h4> Sequences </h4>
|
||||
<div> A <i>sequence</i> (abbreviated to <i>seq</i>) is a group of adjacent
|
||||
parenthesized elements. For example, </div>
|
||||
<div class="code"> (<i>a</i>)(<i>b</i>)(<i>c</i>) </div>
|
||||
<div> ...is a <i>seq</i> of <i>3</i> elements--<i>a</i>, <i>b</i>, and <i>c</i>.
|
||||
</div>
|
||||
<div> <i>Sequences</i> are data structures that merge the properties of
|
||||
both <i>lists</i> and <i>tuples</i> with the exception that a <i>seq, </i>like
|
||||
a <i>tuple, </i>cannot be empty. Therefore, an "empty" <i>seq</i>
|
||||
is considered a special case scenario that must be handled separately in
|
||||
C++. </div>
|
||||
<div class="code">
|
||||
<pre>#define SEQ (x)(y)(z)
|
||||
#define REVERSE(s, state, elem) (elem) state
|
||||
// append to head ^
|
||||
|
||||
BOOST_PP_SEQ_FOLD_LEFT(REVERSE, BOOST_PP_EMPTY, SEQ)()
|
||||
// #1 #2
|
||||
// 1) placeholder for "empty" seq
|
||||
// 2) remove placeholder
|
||||
|
||||
#define SEQ_B (1)(2)(3)
|
||||
#define INC(s, state, elem) state (BOOST_PP_INC(elem))
|
||||
// append to tail ^
|
||||
|
||||
BOOST_PP_SEQ_FOLD_RIGHT(INC, BOOST_PP_SEQ_NIL, SEQ)
|
||||
// ^
|
||||
// special placeholder that will be "eaten"
|
||||
// by appending to the tail
|
||||
</pre> </div>
|
||||
<div> <i>Sequences</i> are extremely efficient. Element access speed
|
||||
approaches random access--even with <i>seqs</i> of up to <i>256</i>
|
||||
elements. This is because element access (among other things) is
|
||||
implemented iteratively rather than recursively. Therefore, elements
|
||||
can be accessed at extremely high indices even on preprocessors with low
|
||||
maximum expansion depths. </div>
|
||||
<div> Elements of a <i>seq</i> can be extracted with <b>BOOST_PP_SEQ_ELEM</b>.
|
||||
</div>
|
||||
<h4> Primitives </h4>
|
||||
<ul>
|
||||
<li> <a href="../ref/seq_elem.html">BOOST_PP_SEQ_ELEM</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com"
|
||||
target="_top">Housemarque Oy</a> 2002</i> <br>
|
||||
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
40
doc/data/tuples.html
Normal file
40
doc/data/tuples.html
Normal file
@ -0,0 +1,40 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
|
||||
<title>tuples.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<h4>Tuples</h4>
|
||||
<div> A <i>tuple</i> is a simple comma-separated list of elements inside
|
||||
parenthesis. For example, </div>
|
||||
<div class="code"> (<i>a</i>, <i>b</i>, <i>c</i>) </div>
|
||||
<div> ...is a <i>tuple</i> of <i>3</i> elements--<i>a</i>, <i>b</i>, and
|
||||
<i>c</i>.<br>
|
||||
<br>
|
||||
A <i>tuple </i>cannot be empty. The notation '()' as a <i>tuple </i>is
|
||||
a single element <i>tuple </i>of size 1, where the element is empty. </div>
|
||||
<div> <i>Tuples</i> are fast and easy to use. With variadic macro
|
||||
support it is not necessary to know the size of a <i>tuple</i>.
|
||||
Use a <i>tuple </i>instead of an <i>array</i>, since a <i>tuple </i>has all of
|
||||
the functionality as an <i>array </i>and is easier syntactically to use.
|
||||
The only functionality an <i>array </i>has which a <i>tuple </i>does
|
||||
not have is that an <i>array </i>can be empty whereas a <i>tuple </i>cannot
|
||||
be empty.</div>
|
||||
<div> Elements of a <i>tuple</i> can be extracted with <b>BOOST_PP_TUPLE_ELEM</b>.
|
||||
</div>
|
||||
<h4>Primitives</h4>
|
||||
<ul>
|
||||
<li><a href="../ref/tuple_elem.html">BOOST_PP_TUPLE_ELEM</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com"
|
||||
target="_top">Housemarque Oy</a> 2002</i> <br>
|
||||
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
doc/examples.html
Normal file
27
doc/examples.html
Normal file
@ -0,0 +1,27 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>topics.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
<base target="desc">
|
||||
</head>
|
||||
<body>
|
||||
<h4>Examples <small><a href="contents.html" target="index">[back]</a></small></h4>
|
||||
<ul>
|
||||
<li><a href="examples/array_arithmetic.c">array_arithmetic.c</a></i>
|
||||
<li><a href="examples/catch_builtin.cpp">catch_builtin.cpp</a></i>
|
||||
<li><a href="examples/delay.c">delay.c</a></i>
|
||||
<li><a href="examples/duffs_device.c">duffs_device.c</a></i>
|
||||
<li><a href="examples/is_integral.cpp">is_integral.cpp</a></li>
|
||||
<li><a href="examples/linear_fib.c">linear_fib.c</a></li>
|
||||
</ul>
|
||||
|
||||
<!--
|
||||
<EFBFBD> Copyright Housemarque Oy 2002
|
||||
<EFBFBD> Copyright Paul Mensonides 2002
|
||||
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)
|
||||
-->
|
||||
|
||||
</body>
|
||||
</html>
|
196
doc/examples/array_arithmetic.c
Normal file
196
doc/examples/array_arithmetic.c
Normal file
@ -0,0 +1,196 @@
|
||||
# /* Copyright (C) 2002
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * 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)
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# /* This example implements over 2200 functions for 1-dimensional arithmetic
|
||||
# * array manipulation in C. The idea is to use preprocessor data structures,
|
||||
# * lists, and tuples for storing metainformation to be used for generating
|
||||
# * the actual C code.
|
||||
# *
|
||||
# * Who needs templates anyway? :)
|
||||
# *
|
||||
# * Compile with any C compiler with a standards conforming preprocessor.
|
||||
# */
|
||||
#
|
||||
# include <boost/preprocessor/comparison/less.hpp>
|
||||
# include <boost/preprocessor/control/if.hpp>
|
||||
# include <boost/preprocessor/list/at.hpp>
|
||||
# include <boost/preprocessor/list/cat.hpp>
|
||||
# include <boost/preprocessor/list/for_each_product.hpp>
|
||||
# include <boost/preprocessor/logical/or.hpp>
|
||||
# include <boost/preprocessor/tuple/to_list.hpp>
|
||||
# include <boost/preprocessor/tuple/eat.hpp>
|
||||
#
|
||||
# /* Information about C operators */
|
||||
#
|
||||
# /* Accessors for the operator datatype. */
|
||||
# define OP_SYMBOL(O) BOOST_PP_TUPLE_ELEM(5, 0, O)
|
||||
# define OP_NAME(O) BOOST_PP_TUPLE_ELEM(5, 1, O)
|
||||
# define OP_IS_FLOATING(O) BOOST_PP_TUPLE_ELEM(5, 2, O)
|
||||
# define OP_IS_LOGICAL(O) BOOST_PP_TUPLE_ELEM(5, 3, O)
|
||||
# define OP_IS_SHIFT(O) BOOST_PP_TUPLE_ELEM(5, 4, O)
|
||||
#
|
||||
# /* List of applicative unary operators. */
|
||||
# define APPLICATIVE_UNARY_OPS \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
3, \
|
||||
( \
|
||||
( ! , logical_not, 1, 1, 0), \
|
||||
( ~ , bitwise_not, 0, 0, 0), \
|
||||
( - , neg, 1, 0, 0) \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# /* List of applicative binary operators. */
|
||||
# define APPLICATIVE_BINARY_OPS \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
18, \
|
||||
( \
|
||||
( * , mul ,1 ,0 ,0), \
|
||||
( / , div ,1 ,0 ,0), \
|
||||
( % , mod ,0 ,0 ,0), \
|
||||
( + , add ,1 ,0 ,0), \
|
||||
( - , sub ,1 ,0 ,0), \
|
||||
( << , shift_left ,0 ,0 ,1), \
|
||||
( >> , shift_right ,0 ,0 ,1), \
|
||||
( < , less ,1 ,1 ,0), \
|
||||
( <= , less_equal ,1 ,1 ,0), \
|
||||
( >= , greater_equal ,1 ,1 ,0), \
|
||||
( > , greater ,1 ,1 ,0), \
|
||||
( == , equal ,1 ,1 ,0), \
|
||||
( != , not_equal ,1 ,1 ,0), \
|
||||
( & , bitwise_and ,0 ,0 ,0), \
|
||||
( | , bitwise_or ,0 ,0 ,0), \
|
||||
( ^ , bitwise_xor ,0 ,0 ,0), \
|
||||
( && , logical_and ,1 ,1 ,0), \
|
||||
( || , logical_or ,1 ,1 ,0) \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# /* Information about C built-in types. */
|
||||
#
|
||||
# /* Accessors for the type datatype. */
|
||||
# define TYPE_NAME(T) BOOST_PP_TUPLE_ELEM(4, 0, T)
|
||||
# define TYPE_ABBREVIATION(T) BOOST_PP_TUPLE_ELEM(4, 1, T)
|
||||
# define TYPE_IS_FLOATING(T) BOOST_PP_TUPLE_ELEM(4, 2, T)
|
||||
# define TYPE_RANK(T) BOOST_PP_TUPLE_ELEM(4, 3, T)
|
||||
#
|
||||
# /* List of C built-in types. */
|
||||
# define BUILTIN_TYPES \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
12, \
|
||||
( \
|
||||
( signed char ,sc, 0, 1), \
|
||||
( char ,ch, 0, 1), \
|
||||
( unsigned char ,uc, 0, 1), \
|
||||
( short ,ss, 0, 2), \
|
||||
( unsigned short ,us, 0, 2), \
|
||||
TYPE_INT, \
|
||||
( unsigned ,ui, 0, 4), \
|
||||
( long ,sl, 0, 5), \
|
||||
( unsigned long ,ul, 0, 6), \
|
||||
( float ,fl, 1, 7), \
|
||||
( double ,db, 1, 8), \
|
||||
( long double ,ld, 1, 9) \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# /* Type int is needed in some type computations. */
|
||||
# define TYPE_INT (int, si, 0, 3)
|
||||
#
|
||||
# /* Type computation macros. */
|
||||
# define TYPE_OF_INTEGER_PROMOTION(T) \
|
||||
BOOST_PP_IF( \
|
||||
BOOST_PP_LESS(TYPE_RANK(T), TYPE_RANK(TYPE_INT)), \
|
||||
TYPE_INT, T \
|
||||
) \
|
||||
/**/
|
||||
# define TYPE_OF_USUAL_ARITHMETIC_CONVERSION(L, R) \
|
||||
TYPE_OF_INTEGER_PROMOTION( \
|
||||
BOOST_PP_IF( \
|
||||
BOOST_PP_LESS(TYPE_RANK(L), TYPE_RANK(R)), \
|
||||
R, L \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
# define TYPE_OF_UNARY_OP(O, T) \
|
||||
BOOST_PP_IF( \
|
||||
OP_IS_LOGICAL(O), \
|
||||
TYPE_INT, TYPE_OF_INTEGER_PROMOTION(T) \
|
||||
) \
|
||||
/**/
|
||||
# define TYPE_OF_BINARY_OP(O, L, R) \
|
||||
BOOST_PP_IF( \
|
||||
OP_IS_LOGICAL(O), TYPE_INT, \
|
||||
BOOST_PP_IF( \
|
||||
OP_IS_SHIFT(O), \
|
||||
TYPE_OF_INTEGER_PROMOTION(L), \
|
||||
TYPE_OF_USUAL_ARITHMETIC_CONVERSION(L,R) \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
# define IS_VALID_UNARY_OP_AND_TYPE_COMBINATION(O, T) \
|
||||
BOOST_PP_IF( \
|
||||
TYPE_IS_FLOATING(T), \
|
||||
OP_IS_FLOATING(O), 1 \
|
||||
) \
|
||||
/**/
|
||||
# define IS_VALID_BINARY_OP_AND_TYPE_COMBINATION(O, L, R) \
|
||||
BOOST_PP_IF( \
|
||||
BOOST_PP_OR(TYPE_IS_FLOATING(L), TYPE_IS_FLOATING(R)), \
|
||||
OP_IS_FLOATING(O), 1 \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# /* Generates code for all unary operators and integral types. */
|
||||
# define UNARY_ARRAY_OP(_, OT) \
|
||||
BOOST_PP_IF( \
|
||||
IS_VALID_UNARY_OP_AND_TYPE_COMBINATION OT, \
|
||||
UNARY_ARRAY_OP_CODE, BOOST_PP_TUPLE_EAT(2) \
|
||||
) OT \
|
||||
/**/
|
||||
# define UNARY_ARRAY_OP_CODE(O, T) \
|
||||
void BOOST_PP_LIST_CAT(BOOST_PP_TUPLE_TO_LIST(4, (array_, OP_NAME(O), _, TYPE_ABBREVIATION(T)))) \
|
||||
(const TYPE_NAME(T)* in, TYPE_NAME(TYPE_OF_UNARY_OP(O, T))* out, unsigned n) { \
|
||||
do { \
|
||||
*out++ = OP_SYMBOL(O) *in++; \
|
||||
} while (--n); \
|
||||
} \
|
||||
/**/
|
||||
|
||||
BOOST_PP_LIST_FOR_EACH_PRODUCT(UNARY_ARRAY_OP, 2, (APPLICATIVE_UNARY_OPS, BUILTIN_TYPES))
|
||||
|
||||
# /* Generates code for all binary operators and integral type pairs. */
|
||||
# define BINARY_ARRAY_OP(_, OLR) \
|
||||
BOOST_PP_IF( \
|
||||
IS_VALID_BINARY_OP_AND_TYPE_COMBINATION OLR, \
|
||||
BINARY_ARRAY_OP_CODE, BOOST_PP_TUPLE_EAT(3) \
|
||||
) OLR \
|
||||
/**/
|
||||
# define BINARY_ARRAY_OP_CODE(O, L, R) \
|
||||
void BOOST_PP_LIST_CAT( \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
6, (array_, OP_NAME(O), _, TYPE_ABBREVIATION(L), _, TYPE_ABBREVIATION(R)) \
|
||||
) \
|
||||
)(const TYPE_NAME(L)* lhs_in, const TYPE_NAME(R)* rhs_in, TYPE_NAME(TYPE_OF_BINARY_OP(O, L, R))* out, unsigned n) { \
|
||||
do { \
|
||||
*out++ = *lhs_in OP_SYMBOL(O) *rhs_in; \
|
||||
++lhs_in; \
|
||||
++rhs_in; \
|
||||
} while (--n); \
|
||||
} \
|
||||
/**/
|
||||
|
||||
BOOST_PP_LIST_FOR_EACH_PRODUCT(BINARY_ARRAY_OP, 3, (APPLICATIVE_BINARY_OPS, BUILTIN_TYPES, BUILTIN_TYPES))
|
51
doc/examples/catch_builtin.cpp
Normal file
51
doc/examples/catch_builtin.cpp
Normal file
@ -0,0 +1,51 @@
|
||||
# /* Copyright (C) 2002
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * 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)
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# /* This example demonstrates the usage of lists and BOOST_PP_LIST_FOR_EACH(). */
|
||||
#
|
||||
# include <iostream>
|
||||
# include <typeinfo>
|
||||
#
|
||||
# include <boost/preprocessor/list/for_each.hpp>
|
||||
# include <boost/preprocessor/tuple/to_list.hpp>
|
||||
#
|
||||
# /* List of built-in types. (Strictly speaking wchar_t should be on the list.) */
|
||||
#
|
||||
# define BUILTIN_TYPES \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
13, \
|
||||
( \
|
||||
bool, \
|
||||
char, signed char, unsigned char, \
|
||||
unsigned short, short, \
|
||||
int, unsigned, \
|
||||
long, unsigned long, \
|
||||
float, \
|
||||
double, long double \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# define CATCH(R, _, T) \
|
||||
catch (T t) { \
|
||||
std::cerr << "Caught an " << typeid(t).name() << " = " << t; \
|
||||
} \
|
||||
/**/
|
||||
|
||||
int main() {
|
||||
try {
|
||||
throw 10;
|
||||
}
|
||||
BOOST_PP_LIST_FOR_EACH(CATCH, _, BUILTIN_TYPES)
|
||||
return 0;
|
||||
}
|
95
doc/examples/delay.c
Normal file
95
doc/examples/delay.c
Normal file
@ -0,0 +1,95 @@
|
||||
# /* Copyright (C) 2002
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * 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)
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# /* The time complexity of DELAY(N) is O(2^N).
|
||||
# *
|
||||
# * Handy when recompiles are too fast to take a coffee break. :)
|
||||
# *
|
||||
# * Template metaprogramming can be used for implementing similar
|
||||
# * delays. Unfortunately template instantiation consumes memory,
|
||||
# * therefore compilers usually fail to fully compile long template
|
||||
# * based delays, because they run out of memory.
|
||||
# *
|
||||
# * On many compilers (e.g. g++, MSVC++), this macro takes only a
|
||||
# * small amount of memory to preprocess. On some compilers (e.g.
|
||||
# * MWCW), however, this macro seems to consume huge amounts of
|
||||
# * memory.
|
||||
# */
|
||||
#
|
||||
# include <boost/preprocessor/arithmetic/dec.hpp>
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/control/while.hpp>
|
||||
# include <boost/preprocessor/facilities/empty.hpp>
|
||||
# include <boost/preprocessor/tuple/elem.hpp>
|
||||
#
|
||||
# ifndef DELAY_MAX
|
||||
# define DELAY_MAX 14
|
||||
# endif
|
||||
#
|
||||
# define DELAY(N) BOOST_PP_TUPLE_ELEM(2, 0, (BOOST_PP_EMPTY, BOOST_PP_WHILE(DELAY_C, BOOST_PP_CAT(DELAY_F, N), BOOST_PP_DEC(N))))()
|
||||
#
|
||||
# define DELAY_C(D, N) N
|
||||
#
|
||||
# define DELAY_F0(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F1(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F2(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F3(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F4(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F5(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F6(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F7(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F8(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F9(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F10(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F11(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F12(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F13(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F14(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F15(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F16(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F17(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F18(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F19(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F20(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F21(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F22(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F23(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F24(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F25(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F26(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F27(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F28(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F29(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F30(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F31(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F32(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F33(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F34(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F35(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F36(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F37(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F38(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F39(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F40(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F41(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F42(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F43(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F44(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F45(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F46(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F47(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F48(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F49(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
# define DELAY_F50(D, N) BOOST_PP_IF(1, BOOST_PP_DEC(N), BOOST_PP_WHILE_ ## D(DELAY_C, DELAY_F ## N, BOOST_PP_DEC(N)))
|
||||
|
||||
DELAY(DELAY_MAX)
|
61
doc/examples/duffs_device.c
Normal file
61
doc/examples/duffs_device.c
Normal file
@ -0,0 +1,61 @@
|
||||
# /* Copyright (C) 2002
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * 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)
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# /* This example uses the preprocessor library to implement a generalized
|
||||
# * macro for implementing Duff's Device.
|
||||
# *
|
||||
# * This example was inspired by an original generalized macro for
|
||||
# * for implementing Duff's Device written by Joerg Walter.
|
||||
# */
|
||||
#
|
||||
# include <assert.h>
|
||||
#
|
||||
# include <boost/preprocessor/repetition/repeat.hpp>
|
||||
# include <boost/preprocessor/tuple/elem.hpp>
|
||||
#
|
||||
# /* Expands to a Duff's Device. */
|
||||
# define DUFFS_DEVICE(UNROLLING_FACTOR, COUNTER_TYPE, N, STATEMENT) \
|
||||
do { \
|
||||
COUNTER_TYPE duffs_device_initial_cnt = (N); \
|
||||
if (duffs_device_initial_cnt > 0) { \
|
||||
COUNTER_TYPE duffs_device_running_cnt = (duffs_device_initial_cnt + (UNROLLING_FACTOR - 1)) / UNROLLING_FACTOR; \
|
||||
switch (duffs_device_initial_cnt % UNROLLING_FACTOR) { \
|
||||
do { \
|
||||
BOOST_PP_REPEAT(UNROLLING_FACTOR, DUFFS_DEVICE_C, (UNROLLING_FACTOR, { STATEMENT })) \
|
||||
} while (--duffs_device_running_cnt); \
|
||||
} \
|
||||
} \
|
||||
} while (0) \
|
||||
/**/
|
||||
#
|
||||
# define DUFFS_DEVICE_C(Z, I, UNROLLING_FACTOR_STATEMENT) \
|
||||
case (I ? BOOST_PP_TUPLE_ELEM(2, 0, UNROLLING_FACTOR_STATEMENT) - I : 0): \
|
||||
BOOST_PP_TUPLE_ELEM(2, 1, UNROLLING_FACTOR_STATEMENT); \
|
||||
/**/
|
||||
#
|
||||
# ifndef UNROLLING_FACTOR
|
||||
# define UNROLLING_FACTOR 16
|
||||
# endif
|
||||
#
|
||||
# ifndef N
|
||||
# define N 1000
|
||||
# endif
|
||||
|
||||
int main(void) {
|
||||
int i = 0;
|
||||
DUFFS_DEVICE(UNROLLING_FACTOR, int, 0, ++i;);
|
||||
assert(i == 0);
|
||||
DUFFS_DEVICE(UNROLLING_FACTOR, int, N, ++i;);
|
||||
assert(i == N);
|
||||
return 0;
|
||||
}
|
49
doc/examples/is_integral.cpp
Normal file
49
doc/examples/is_integral.cpp
Normal file
@ -0,0 +1,49 @@
|
||||
# /* Copyright (C) 2002
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * 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)
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# /* This example demonstrates the usage of preprocessor lists for generating C++ code. */
|
||||
#
|
||||
# include <boost/preprocessor/facilities/empty.hpp>
|
||||
# include <boost/preprocessor/list/at.hpp>
|
||||
# include <boost/preprocessor/list/for_each_product.hpp>
|
||||
# include <boost/preprocessor/tuple/elem.hpp>
|
||||
# include <boost/preprocessor/tuple/to_list.hpp>
|
||||
#
|
||||
# /* List of integral types. (Strictly speaking, wchar_t should be on the list.) */
|
||||
# define INTEGRAL_TYPES \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
9, (char, signed char, unsigned char, short, unsigned short, int, unsigned, long, unsigned long) \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# /* List of invokeable cv-qualifiers */
|
||||
# define CV_QUALIFIERS \
|
||||
BOOST_PP_TUPLE_TO_LIST( \
|
||||
4, (BOOST_PP_EMPTY, const BOOST_PP_EMPTY, volatile BOOST_PP_EMPTY, const volatile BOOST_PP_EMPTY) \
|
||||
) \
|
||||
/**/
|
||||
#
|
||||
# /* Template for testing whether a type is an integral type. */
|
||||
|
||||
template<class T> struct is_integral {
|
||||
enum { value = false };
|
||||
};
|
||||
|
||||
# /* Macro for defining a specialization of is_integral<> template. */
|
||||
# define IS_INTEGRAL_SPECIALIZATION(R, L) \
|
||||
template<> struct is_integral<BOOST_PP_TUPLE_ELEM(2, 0, L)() BOOST_PP_TUPLE_ELEM(2, 1, L)> { \
|
||||
enum { value = true }; \
|
||||
}; \
|
||||
/**/
|
||||
|
||||
BOOST_PP_LIST_FOR_EACH_PRODUCT(IS_INTEGRAL_SPECIALIZATION, 2, (CV_QUALIFIERS, INTEGRAL_TYPES))
|
91
doc/examples/linear_fib.c
Normal file
91
doc/examples/linear_fib.c
Normal file
@ -0,0 +1,91 @@
|
||||
# /* Copyright (C) 2002
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * 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)
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# /* This example shows how BOOST_PP_WHILE() can be used for implementing macros. */
|
||||
#
|
||||
# include <stdio.h>
|
||||
#
|
||||
# include <boost/preprocessor/arithmetic/add.hpp>
|
||||
# include <boost/preprocessor/arithmetic/sub.hpp>
|
||||
# include <boost/preprocessor/comparison/less_equal.hpp>
|
||||
# include <boost/preprocessor/control/while.hpp>
|
||||
# include <boost/preprocessor/list/adt.hpp>
|
||||
# include <boost/preprocessor/tuple/elem.hpp>
|
||||
#
|
||||
# /* First consider the following C implementation of Fibonacci. */
|
||||
|
||||
typedef struct linear_fib_state {
|
||||
int a0, a1, n;
|
||||
} linear_fib_state;
|
||||
|
||||
static int linear_fib_c(linear_fib_state p) {
|
||||
return p.n;
|
||||
}
|
||||
|
||||
static linear_fib_state linear_fib_f(linear_fib_state p) {
|
||||
linear_fib_state r = { p.a1, p.a0 + p.a1, p.n - 1 };
|
||||
return r;
|
||||
}
|
||||
|
||||
static int linear_fib(int n) {
|
||||
linear_fib_state p = { 0, 1, n };
|
||||
while (linear_fib_c(p)) {
|
||||
p = linear_fib_f(p);
|
||||
}
|
||||
return p.a0;
|
||||
}
|
||||
|
||||
# /* Then consider the following preprocessor implementation of Fibonacci. */
|
||||
#
|
||||
# define LINEAR_FIB(n) LINEAR_FIB_D(1, n)
|
||||
# /* Since the macro is implemented using BOOST_PP_WHILE, the actual
|
||||
# * implementation takes a depth as a parameters so that it can be called
|
||||
# * inside a BOOST_PP_WHILE. The above easy-to-use version simply uses 1
|
||||
# * as the depth and cannot be called inside a BOOST_PP_WHILE.
|
||||
# */
|
||||
#
|
||||
# define LINEAR_FIB_D(d, n) \
|
||||
BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE_ ## d(LINEAR_FIB_C, LINEAR_FIB_F, (0, 1, n)))
|
||||
# /* ^^^^ ^^^^^ ^^ ^^ ^^^^^^^
|
||||
# * #1 #2 #3 #3 #4
|
||||
# *
|
||||
# * 1) The state is a 3-element tuple. After the iteration is finished, the first
|
||||
# * element of the tuple is the result.
|
||||
# *
|
||||
# * 2) The WHILE primitive is "invoked" directly. BOOST_PP_WHILE(D, ...)
|
||||
# * can't be used because it would not be expanded by the preprocessor.
|
||||
# *
|
||||
# * 3) ???_C is the condition and ???_F is the iteration macro.
|
||||
# */
|
||||
#
|
||||
# define LINEAR_FIB_C(d, p) \
|
||||
/* p.n */ BOOST_PP_TUPLE_ELEM(3, 2, p) \
|
||||
/**/
|
||||
#
|
||||
# define LINEAR_FIB_F(d, p) \
|
||||
( \
|
||||
/* p.a1 */ BOOST_PP_TUPLE_ELEM(3, 1, p), \
|
||||
/* p.a0 + p.a1 */ BOOST_PP_ADD_D(d, BOOST_PP_TUPLE_ELEM(3, 0, p), BOOST_PP_TUPLE_ELEM(3, 1, p)), \
|
||||
/* ^^ ^ \
|
||||
* BOOST_PP_ADD() uses BOOST_PP_WHILE(). Therefore we \
|
||||
* pass the recursion depth explicitly to BOOST_PP_ADD_D(). \
|
||||
*/ \
|
||||
/* p.n - 1 */ BOOST_PP_DEC(BOOST_PP_TUPLE_ELEM(3, 2, p)) \
|
||||
) \
|
||||
/**/
|
||||
|
||||
int main() {
|
||||
printf("linear_fib(10) = %d\n", linear_fib(10));
|
||||
printf("LINEAR_FIB(10) = %d\n", LINEAR_FIB(10));
|
||||
return 0;
|
||||
}
|
@ -1,343 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<title>Boost.Preprocessor - Tutorial examples preprocessed</title>
|
||||
</head>
|
||||
<body bgcolor="#FFFFFF" link="#0000ff" vlink="#800080">
|
||||
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
|
||||
"header">
|
||||
<tr>
|
||||
<td valign="top" width="300">
|
||||
<h3><a href="../../../index.htm"><img height="86" width="277" alt="C++ Boost" src="../../../c++boost.gif" border="0"></a></h3>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<h1 align="center">Boost.Preprocessor</h1>
|
||||
<h2 align="center">Tutorial examples preprocessed</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr>
|
||||
|
||||
<p>The following code snippets were produced by actually preprocessing the code
|
||||
snippets of the tutorial. After preprocessing the code was reformatted manually.</p>
|
||||
|
||||
<hr>
|
||||
<p><strong><a name="Local Macro"></a><a href="tutorial.htm#Local Macro">EXAMPLE</a>:</strong>
|
||||
Use a Local Macro to avoid small scale repetition</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>template<class T, int n>
|
||||
vec<T,n>&
|
||||
operator +=
|
||||
( vec<T,n>&
|
||||
lhs
|
||||
, const vec<T,n>&
|
||||
rhs
|
||||
)
|
||||
{ for (int i=0; i<n; ++i)
|
||||
lhs(i) += rhs(i);
|
||||
return lhs;
|
||||
}
|
||||
|
||||
template<class T, int n>
|
||||
vec<T,n>&
|
||||
operator -=
|
||||
( vec<T,n>&
|
||||
lhs
|
||||
, const vec<T,n>&
|
||||
rhs
|
||||
)
|
||||
{ for (int i=0; i<n; ++i)
|
||||
lhs(i) -= rhs(i);
|
||||
return lhs;
|
||||
}
|
||||
|
||||
template<class T, int n>
|
||||
vec<T,n>&
|
||||
operator *=
|
||||
( vec<T,n>&
|
||||
lhs
|
||||
, const vec<T,n>&
|
||||
rhs
|
||||
)
|
||||
{ for (int i=0; i<n; ++i)
|
||||
lhs(i) *= rhs(i);
|
||||
return lhs;
|
||||
}
|
||||
|
||||
template<class T, int n>
|
||||
vec<T,n>&
|
||||
operator /=
|
||||
( vec<T,n>&
|
||||
lhs
|
||||
, const vec<T,n>&
|
||||
rhs
|
||||
)
|
||||
{ for (int i=0; i<n; ++i)
|
||||
lhs(i) /= rhs(i);
|
||||
return lhs;
|
||||
}
|
||||
</pre>
|
||||
</blockquote>
|
||||
|
||||
<hr>
|
||||
<p><strong><a name="UNUSED"></a><a href="tutorial.htm#UNUSED">EXAMPLE</a>:</strong>
|
||||
Use BOOST_PP_EMPTY() as an unused parameter in Local Macro instantiations</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>template<class base>
|
||||
typename implement_subscript_using_begin_subscript<base>::value_type&
|
||||
implement_subscript_using_begin_subscript<base>::operator[]
|
||||
( index_type
|
||||
i
|
||||
)
|
||||
{ return base::begin()[i];
|
||||
}
|
||||
|
||||
template<class base>
|
||||
const typename implement_subscript_using_begin_subscript<base>::value_type&
|
||||
implement_subscript_using_begin_subscript<base>::operator[]
|
||||
( index_type
|
||||
i
|
||||
) const
|
||||
{ return base::begin()[i];
|
||||
}
|
||||
</pre>
|
||||
</blockquote>
|
||||
|
||||
<hr>
|
||||
<p><b><a name="CAT"></a><a href="tutorial.htm#CAT">EXAMPLE:</a></b> Use BOOST_PP_CAT instead of ## when necessary</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>enum
|
||||
{ static_check_152 = (sizeof(int) <= sizeof(long)) ? 1 : -1
|
||||
};
|
||||
typedef char
|
||||
static_assert_152
|
||||
[ static_check_152
|
||||
];
|
||||
</pre>
|
||||
</blockquote>
|
||||
<hr>
|
||||
<p><b><a name="STRINGIZE"></a><a href="tutorial.htm#STRINGIZE">EXAMPLE:</a></b> Use BOOST_PP_STRINGIZE instead of # whenever necessary</p>
|
||||
<blockquote>
|
||||
<pre>#pragma message("examples.cpp" "(" "20" ") : " "TBD!")</pre>
|
||||
</blockquote>
|
||||
<hr>
|
||||
<p><strong><a name="ENUM_PARAMS"></a><a href="tutorial.htm#ENUM_PARAMS">EXAMPLE</a>:</strong>
|
||||
Use:</p>
|
||||
<ul>
|
||||
<li> BOOST_PP_ENUM_PARAMS,</li>
|
||||
<li> BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT,</li>
|
||||
<li> BOOST_PP_ENUM_PARAMS_WITH_DEFAULTS,</li>
|
||||
<li> BOOST_PP_ENUM_SHIFTED_PARAMS, or</li>
|
||||
<li>BOOST_PP_REPEAT, and</li>
|
||||
<li> BOOST_PP_COMMA_IF</li>
|
||||
</ul>
|
||||
<p>to avoid O(N) repetition on lists in general</p>
|
||||
<blockquote>
|
||||
<pre>struct make_type_list_end;
|
||||
|
||||
template
|
||||
< class T0=make_type_list_end
|
||||
, class T1=make_type_list_end
|
||||
, class T2=make_type_list_end
|
||||
, class T3=make_type_list_end
|
||||
, class T4=make_type_list_end
|
||||
, class T5=make_type_list_end
|
||||
, class T6=make_type_list_end
|
||||
, class T7=make_type_list_end
|
||||
>
|
||||
struct make_type_list
|
||||
{
|
||||
private:
|
||||
enum
|
||||
{ end = is_same<T0,make_type_list_end>::value
|
||||
};
|
||||
public:
|
||||
typedef typename
|
||||
type_if
|
||||
< end
|
||||
, type_cons_empty
|
||||
, type_cons
|
||||
< T0
|
||||
, typename
|
||||
type_inner_if
|
||||
< end
|
||||
, type_identity<end>
|
||||
, make_type_list
|
||||
< T1
|
||||
, T2
|
||||
, T3
|
||||
, T4
|
||||
, T5
|
||||
, T6
|
||||
, T7
|
||||
>
|
||||
>::type
|
||||
>
|
||||
>::type type;
|
||||
};
|
||||
</pre>
|
||||
</blockquote>
|
||||
|
||||
<hr>
|
||||
<p><strong><a name="Token Look-Up"></a><a href="tutorial.htm#Token Look-Up">EXAMPLE</a>:</strong>
|
||||
Use BOOST_PP_REPEAT and a Token Look-Up Function to eliminate categorical
|
||||
repetition</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>catch (bool t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (char t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (signed char t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (unsigned char t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (short t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (unsigned short t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (int t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (unsigned int t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (long t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (unsigned long t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (float t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (double t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
catch (long double t)
|
||||
{ report_typeid(t);
|
||||
report_value(t);
|
||||
}
|
||||
</pre>
|
||||
</blockquote>
|
||||
|
||||
<hr>
|
||||
<p><strong><a name="2ND_REPEAT"></a><a href="tutorial.htm#2ND_REPEAT">EXAMPLE</a>:</strong>
|
||||
Use BOOST_PP_REPEAT_2ND to avoid O(N*N) repetition</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>vec()
|
||||
{
|
||||
}
|
||||
vec(T a0)
|
||||
{ (*this)[0] = a0;
|
||||
}
|
||||
vec(T a0, T a1)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
}
|
||||
vec(T a0, T a1, T a2)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
(*this)[2] = a2;
|
||||
}
|
||||
vec(T a0, T a1, T a2, T a3)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
(*this)[2] = a2;
|
||||
(*this)[3] = a3;
|
||||
}
|
||||
vec(T a0, T a1, T a2, T a3, T a4)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
(*this)[2] = a2;
|
||||
(*this)[3] = a3;
|
||||
(*this)[4] = a4;
|
||||
}
|
||||
vec(T a0, T a1, T a2, T a3, T a4, T a5)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
(*this)[2] = a2;
|
||||
(*this)[3] = a3;
|
||||
(*this)[4] = a4;
|
||||
(*this)[5] = a5;
|
||||
}
|
||||
vec(T a0, T a1, T a2, T a3, T a4, T a5, T a6)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
(*this)[2] = a2;
|
||||
(*this)[3] = a3;
|
||||
(*this)[4] = a4;
|
||||
(*this)[5] = a5;
|
||||
(*this)[6] = a6;
|
||||
}
|
||||
vec(T a0, T a1, T a2, T a3, T a4, T a5, T a6, T a7)
|
||||
{ (*this)[0] = a0;
|
||||
(*this)[1] = a1;
|
||||
(*this)[2] = a2;
|
||||
(*this)[3] = a3;
|
||||
(*this)[4] = a4;
|
||||
(*this)[5] = a5;
|
||||
(*this)[6] = a6;
|
||||
(*this)[7] = a7;
|
||||
}
|
||||
</pre>
|
||||
</blockquote>
|
||||
|
||||
<p>
|
||||
<hr>
|
||||
<p><a name="IF"></a><a href="tutorial.htm#IF"><b>EXAMPLE:</b></a>
|
||||
Use BOOST_PP_IF to implement special case for the first element</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>false == false;
|
||||
true == true;
|
||||
</pre>
|
||||
</blockquote>
|
||||
|
||||
<p>
|
||||
<hr>
|
||||
|
||||
<p><a name="Arithmetic"></a><a href="tutorial.htm#Arithmetic"><B>EXAMPLE:</B></a> Use arithmetic, logical and comparison operations when necessary</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>S, E0, E1
|
||||
E0, S, E1
|
||||
E0, E1, S
|
||||
BAD PARAMS FOR SPECIAL_NUMBERED_LIST! E0, E1, E2, S</pre>
|
||||
</blockquote>
|
||||
|
||||
<hr>
|
||||
<p>Revised
|
||||
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
|
||||
<!--webbot bot="Timestamp" endspan i-checksum="39359" -->
|
||||
</p>
|
||||
<p><i>© Copyright <a href="http://www.housemarque.com">Housemarque Oy</a> 2002</i></p>
|
||||
|
||||
<p><i>Permission to copy, use, modify, sell and distribute this document is granted
|
||||
provided this copyright notice appears in all copies. This document is provided
|
||||
"as is" without express or implied warranty, and with no claim as to its suitability
|
||||
for any purpose.</i></p>
|
||||
</body>
|
||||
</html>
|
254
doc/headers.html
Normal file
254
doc/headers.html
Normal file
@ -0,0 +1,254 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
|
||||
<title>headers.html</title>
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
<base target="desc">
|
||||
<style>
|
||||
.ps { margin-left: 30px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h4> Headers <small><a href="contents.html" target="index">[back]</a></small>
|
||||
</h4>
|
||||
<ul>
|
||||
<li>../</li>
|
||||
<li class="ps"> <a href="headers/preprocessor.html">preprocessor.hpp</a></li>
|
||||
<li><a href="headers/arithmetic.html">arithmetic.hpp</a></li>
|
||||
<li>arithmetic/</li>
|
||||
<li class="ps"><a href="headers/arithmetic/add.html">add.hpp</a></li>
|
||||
<li class="ps"><a href="headers/arithmetic/dec.html">dec.hpp</a></li>
|
||||
<li class="ps"><a href="headers/arithmetic/div.html">div.hpp</a></li>
|
||||
<li class="ps"><a href="headers/arithmetic/inc.html">inc.hpp</a></li>
|
||||
<li class="ps"><a href="headers/arithmetic/mod.html">mod.hpp</a></li>
|
||||
<li class="ps"><a href="headers/arithmetic/mul.html">mul.hpp</a></li>
|
||||
<li class="ps"><a href="headers/arithmetic/sub.html">sub.hpp</a></li>
|
||||
<li><a href="headers/array.html">array.hpp</a></li>
|
||||
<li>array/</li>
|
||||
<li class="ps"><a href="headers/array/data.html">data.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/elem.html">elem.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/enum.html">enum.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/insert.html">insert.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/pop_back.html">pop_back.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/pop_front.html">pop_front.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/push_back.html">push_back.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/push_front.html">push_front.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/remove.html">remove.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/replace.html">replace.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/reverse.html">reverse.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/size.html">size.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/to_list.html">to_list.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/to_seq.html">to_seq.hpp</a></li>
|
||||
<li class="ps"><a href="headers/array/to_tuple.html">to_tuple.hpp</a></li>
|
||||
<li><a href="headers/assert_msg.html">assert_msg.hpp*</a></li>
|
||||
<li><a href="headers/cat.html">cat.hpp</a></li>
|
||||
<li><a href="headers/comma.html">comma.hpp*</a></li>
|
||||
<li><a href="headers/comma_if.html">comma_if.hpp*</a></li>
|
||||
<li><a href="headers/comparison.html">comparison.hpp</a></li>
|
||||
<li>comparison/</li>
|
||||
<li class="ps"><a href="headers/comparison/equal.html">equal.hpp</a></li>
|
||||
<li class="ps"><a href="headers/comparison/greater.html">greater.hpp</a></li>
|
||||
<li class="ps"><a href="headers/comparison/greater_equal.html">greater_equal.hpp</a></li>
|
||||
<li class="ps"><a href="headers/comparison/less.html">less.hpp</a></li>
|
||||
<li class="ps"><a href="headers/comparison/less_equal.html">less_equal.hpp</a></li>
|
||||
<li class="ps"><a href="headers/comparison/not_equal.html">not_equal.hpp</a></li>
|
||||
<li>config/</li>
|
||||
<li class="ps"><a href="headers/config/limits.html">limits.hpp</a></li>
|
||||
<li class="ps"><a href="headers/config/variadics.html">config.hpp</a></li>
|
||||
<li><a href="headers/control.html">control.hpp</a></li>
|
||||
<li>control/</li>
|
||||
<li class="ps"><a href="headers/control/deduce_d.html">deduce_d.hpp</a></li>
|
||||
<li class="ps"><a href="headers/control/expr_if.html">expr_if.hpp</a></li>
|
||||
<li class="ps"><a href="headers/control/expr_iif.html">expr_iif.hpp</a></li>
|
||||
<li class="ps"><a href="headers/control/if.html">if.hpp</a></li>
|
||||
<li class="ps"><a href="headers/control/iif.html">iif.hpp</a></li>
|
||||
<li class="ps"><a href="headers/control/while.html">while.hpp</a></li>
|
||||
<li><a href="headers/debug.html">debug.hpp</a></li>
|
||||
<li>debug/</li>
|
||||
<li class="ps"><a href="headers/debug/assert.html">assert.hpp</a></li>
|
||||
<li class="ps"><a href="headers/debug/line.html">line.hpp</a></li>
|
||||
<li><a href="headers/dec.html">dec.hpp*</a></li>
|
||||
<li><a href="headers/empty.html">empty.hpp*</a></li>
|
||||
<li><a href="headers/enum.html">enum.hpp*</a></li>
|
||||
<li><a href="headers/enum_params.html">enum_params.hpp*</a></li>
|
||||
<li><a href="headers/epwad.html">enum_params_with_a_default.hpp*</a></li>
|
||||
<li><a href="headers/epwd.html">enum_params_with_defaults.hpp*</a></li>
|
||||
<li><a href="headers/enum_shifted.html">enum_shifted.hpp*</a></li>
|
||||
<li><a href="headers/enum_shifted_params.html">enum_shifted_params.hpp*</a></li>
|
||||
<li><a href="headers/expand.html">expand.hpp*</a></li>
|
||||
<li><a href="headers/expr_if.html">expr_if.hpp*</a></li>
|
||||
<li><a href="headers/facilities.html">facilities.hpp</a></li>
|
||||
<li>facilities/</li>
|
||||
<li class="ps"><a href="headers/facilities/apply.html">apply.hpp</a></li>
|
||||
<li class="ps"><a href="headers/facilities/check_empty.html">check_empty.hpp</a>
|
||||
<a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/facilities/empty.html">empty.hpp</a></li>
|
||||
<li class="ps"><a href="headers/facilities/expand.html">expand.hpp</a></li>
|
||||
<li class="ps"><a href="headers/facilities/identity.html">identity.hpp</a></li>
|
||||
<li class="ps"><a href="headers/facilities/intercept.html">intercept.hpp</a></li>
|
||||
<li class="ps"><a href="headers/facilities/overload.html">overload.hpp</a>
|
||||
<a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/facilities/va_opt.html">va_opt.hpp</a>
|
||||
<a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li><a href="headers/for.html">for.hpp*</a></li>
|
||||
<li><a href="headers/identity.html">identity.hpp*</a></li>
|
||||
<li><a href="headers/if.html">if.hpp*</a></li>
|
||||
<li><a href="headers/inc.html">inc.hpp*</a></li>
|
||||
<li><a href="headers/iterate.html">iterate.hpp*</a></li>
|
||||
<li><a href="headers/iteration.html">iteration.hpp</a></li>
|
||||
<li>iteration/</li>
|
||||
<li class="ps"><a href="headers/iteration/iterate.html">iterate.hpp</a></li>
|
||||
<li class="ps"><a href="headers/iteration/local.html">local.hpp</a></li>
|
||||
<li class="ps"><a href="headers/iteration/self.html">self.hpp</a></li>
|
||||
<li><a href="headers/library.html">library.hpp</a></li>
|
||||
<li><a href="headers/limits.html">limits.hpp*</a></li>
|
||||
<li><a href="headers/list.html">list.hpp</a></li>
|
||||
<li>list/</li>
|
||||
<li class="ps"><a href="headers/list/adt.html">adt.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/append.html">append.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/at.html">at.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/cat.html">cat.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/enum.html">enum.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/filter.html">filter.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/first_n.html">first_n.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/fold_left.html">fold_left.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/fold_right.html">fold_right.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/for_each.html">for_each.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/for_each_i.html">for_each_i.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/for_each_product.html">for_each_product.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/rest_n.html">rest_n.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/reverse.html">reverse.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/size.html">size.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/to_array.html">to_array.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/to_seq.html">to_seq.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/to_tuple.html">to_tuple.hpp</a></li>
|
||||
<li class="ps"><a href="headers/list/transform.html">transform.hpp</a></li>
|
||||
<li><a href="headers/logical.html">logical.hpp</a></li>
|
||||
<li>logical/</li>
|
||||
<li class="ps"><a href="headers/logical/and.html">and.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/bitand.html">bitand.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/bitnor.html">bitnor.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/bitor.html">bitor.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/bitxor.html">bitxor.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/bool.html">bool.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/compl.html">compl.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/nor.html">nor.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/not.html">not.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/or.html">or.hpp</a></li>
|
||||
<li class="ps"><a href="headers/logical/xor.html">xor.hpp</a></li>
|
||||
<li><a href="headers/max.html">max.hpp*</a></li>
|
||||
<li><a href="headers/min.html">min.hpp*</a></li>
|
||||
<li><a href="headers/punctuation.html">punctuation.hpp</a></li>
|
||||
<li>punctuation/</li>
|
||||
<li class="ps"><a href="headers/punctuation/comma.html">comma.hpp</a></li>
|
||||
<li class="ps"><a href="headers/punctuation/comma_if.html">comma_if.hpp</a></li>
|
||||
<li class="ps"><a href="headers/punctuation/is_begin_parens.html">is_begin_parens.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/punctuation/paren.html">paren.hpp</a></li>
|
||||
<li class="ps"><a href="headers/punctuation/paren_if.html">paren_if.hpp</a></li>
|
||||
<li class="ps"><a href="headers/punctuation/remove_parens.html">remove_parens.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li><a href="headers/repeat.html">repeat.hpp*</a></li>
|
||||
<li><a href="headers/repeat_2nd.html">repeat_2nd.hpp*</a></li>
|
||||
<li><a href="headers/repeat_3rd.html">repeat_3rd.hpp*</a></li>
|
||||
<li><a href="headers/repeat_from_to.html">repeat_from_to.hpp*</a></li>
|
||||
<li><a href="headers/repeat_from_to_2nd.html">repeat_from_to_2nd.hpp*</a></li>
|
||||
<li><a href="headers/repeat_from_to_3rd.html">repeat_from_to_3rd.hpp*</a></li>
|
||||
<li><a href="headers/repetition.html">repetition.hpp</a></li>
|
||||
<li>repetition/</li>
|
||||
<li class="ps"><a href="headers/repetition/deduce_r.html">deduce_r.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/deduce_z.html">deduce_z.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum.html">enum.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum_binary_params.html">enum_binary_params.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum_params.html">enum_params.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/epwad.html">enum_params_with_a_default.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/epwd.html">enum_params_with_defaults.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/esbp.html">enum_shifted_binary_params.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum_shifted_params.html">enum_shifted_params.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum_shifted.html">enum_shifted.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum_trailing.html">enum_trailing.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/etbp.html">enum_trailing_binary_params.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/enum_trailing_params.html">enum_trailing_params.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/for.html">for.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/repeat.html">repeat.hpp</a></li>
|
||||
<li class="ps"><a href="headers/repetition/repeat_from_to.html">repeat_from_to.hpp</a></li>
|
||||
<li><a href="headers/selection.html">selection.hpp</a></li>
|
||||
<li>selection/</li>
|
||||
<li class="ps"><a href="headers/selection/max.html">max.hpp</a></li>
|
||||
<li class="ps"><a href="headers/selection/min.html">min.hpp</a></li>
|
||||
<li><a href="headers/seq.html">seq.hpp</a></li>
|
||||
<li>seq/</li>
|
||||
<li class="ps"><a href="headers/seq/cat.html">cat.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/elem.html">elem.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/enum.html">enum.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/filter.html">filter.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/first_n.html">first_n.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/fold_left.html">fold_left.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/fold_right.html">fold_right.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/for_each.html">for_each.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/for_each_i.html">for_each_i.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/for_each_product.html">for_each_product.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/insert.html">insert.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/pop_back.html">pop_back.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/pop_front.html">pop_front.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/push_back.html">push_back.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/push_front.html">push_front.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/remove.html">remove.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/replace.html">replace.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/rest_n.html">rest_n.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/reverse.html">reverse.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/seq.html">seq.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/size.html">size.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/subseq.html">subseq.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/to_array.html">to_array.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/to_list.html">to_list.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/to_tuple.html">to_tuple.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/transform.html">transform.hpp</a></li>
|
||||
<li class="ps"><a href="headers/seq/variadic_seq_to_seq.html">variadic_seq_to_seq.hpp</a></li>
|
||||
<li><a href="headers/slot.html">slot.hpp</a></li>
|
||||
<li>slot/</li>
|
||||
<li class="ps"><a href="headers/slot/counter.html">counter.hpp</a></li>
|
||||
<li class="ps"><a href="headers/slot/slot.html">slot.hpp</a></li>
|
||||
<li><a href="headers/tuple.html">tuple.hpp</a></li>
|
||||
<li>tuple/</li>
|
||||
<li class="ps"><a href="headers/tuple/eat.html">eat.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/elem.html">elem.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/enum.html">enum.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/insert.html">insert.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/pop_back.html">pop_back.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/pop_front.html">pop_front.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/push_back.html">push_back.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/push_front.html">push_front.hpp</a>
|
||||
<a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/rem.html">rem.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/remove.html">remove.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/replace.html">replace.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/reverse.html">reverse.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/size.html">size.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/to_array.html">to_array.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/to_list.html">to_list.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/tuple/to_seq.html">to_seq.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li><a href="headers/stringize.html">stringize.hpp</a></li>
|
||||
<li><a href="headers/variadic.html">variadic.hpp</a></li>
|
||||
<li>variadic/</li>
|
||||
<li class="ps"><a href="headers/variadic/elem.html">elem.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/variadic/has_opt.html">has_opt.hpp</a> </li>
|
||||
<li class="ps"><a href="headers/variadic/size.html">size.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/variadic/to_array.html">to_array.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/variadic/to_list.html">to_list.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/variadic/to_seq.html">to_seq.hpp</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li class="ps"><a href="headers/variadic/to_tuple.html">to_tuple.hpp</a> <a
|
||||
href="topics/variadic_macros.html#VNotation">(v)</a></li>
|
||||
<li><a href="headers/while.html">while.hpp*</a></li>
|
||||
<li><a href="headers/wstringize.html">wstringize.hpp</a></li>
|
||||
</ul>
|
||||
<!--
|
||||
<EFBFBD> Copyright Housemarque Oy 2002<30> Copyright Paul Mensonides 2002
|
||||
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)-->
|
||||
</body>
|
||||
</html>
|
36
doc/headers/arithmetic.html
Normal file
36
doc/headers/arithmetic.html
Normal file
@ -0,0 +1,36 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic.hpp</b> includes the headers in the <i>arithmetic</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="arithmetic/add.html"><boost/preprocessor/arithmetic/add.hpp></a></li>
|
||||
<li><a href="arithmetic/dec.html"><boost/preprocessor/arithmetic/dec.hpp></a></li>
|
||||
<li><a href="arithmetic/div.html"><boost/preprocessor/arithmetic/div.hpp></a></li>
|
||||
<li><a href="arithmetic/inc.html"><boost/preprocessor/arithmetic/inc.hpp></a></li>
|
||||
<li><a href="arithmetic/mod.html"><boost/preprocessor/arithmetic/mod.hpp></a></li>
|
||||
<li><a href="arithmetic/mul.html"><boost/preprocessor/arithmetic/mul.hpp></a></li>
|
||||
<li><a href="arithmetic/sub.html"><boost/preprocessor/arithmetic/sub.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/arithmetic/add.html
Normal file
31
doc/headers/arithmetic/add.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/add.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/add.hpp</b> header defines macros for addition.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/add.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/add.html">BOOST_PP_ADD</a></li>
|
||||
<li><a href="../../ref/add_d.html">BOOST_PP_ADD_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/arithmetic/dec.html
Normal file
30
doc/headers/arithmetic/dec.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/dec.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/dec.hpp</b> header defines a decrementation macro.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/dec.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/dec.html">BOOST_PP_DEC</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/arithmetic/div.html
Normal file
31
doc/headers/arithmetic/div.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/div.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/div.hpp</b> header defines macros for division.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/div.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/div.html">BOOST_PP_DIV</a></li>
|
||||
<li><a href="../../ref/div_d.html">BOOST_PP_DIV_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/arithmetic/inc.html
Normal file
30
doc/headers/arithmetic/inc.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/inc.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/inc.hpp</b> header defines an incrementation macro.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/inc.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/inc.html">BOOST_PP_INC</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/arithmetic/mod.html
Normal file
31
doc/headers/arithmetic/mod.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/mod.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/mod.hpp</b> header defines macros for modulus.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/mod.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/mod.html">BOOST_PP_MOD</a></li>
|
||||
<li><a href="../../ref/mod_d.html">BOOST_PP_MOD_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/arithmetic/mul.html
Normal file
31
doc/headers/arithmetic/mul.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/mul.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/mul.hpp</b> header defines macros for multiplication.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/mul.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/mul.html">BOOST_PP_MUL</a></li>
|
||||
<li><a href="../../ref/mul_d.html">BOOST_PP_MUL_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/arithmetic/sub.html
Normal file
31
doc/headers/arithmetic/sub.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>arithmetic/sub.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>arithmetic/sub.hpp</b> header defines macros for subtraction.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/arithmetic/sub.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/sub.html">BOOST_PP_SUB</a></li>
|
||||
<li><a href="../../ref/sub_d.html">BOOST_PP_SUB_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
43
doc/headers/array.html
Normal file
43
doc/headers/array.html
Normal file
@ -0,0 +1,43 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array.hpp</b> includes the headers in the <i>array</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="array/data.html"><boost/preprocessor/array/data.hpp></a></li>
|
||||
<li><a href="array/elem.html"><boost/preprocessor/array/elem.hpp></a></li>
|
||||
<li><a href="array/enum.html"><boost/preprocessor/array/enum.hpp></a></li>
|
||||
<li><a href="array/insert.html"><boost/preprocessor/array/insert.hpp></a></li>
|
||||
<li><a href="array/pop_back.html"><boost/preprocessor/array/pop_back.hpp></a></li>
|
||||
<li><a href="array/pop_front.html"><boost/preprocessor/array/pop_front.hpp></a></li>
|
||||
<li><a href="array/push_back.html"><boost/preprocessor/array/push_back.hpp></a></li>
|
||||
<li><a href="array/push_front.html"><boost/preprocessor/array/push_front.hpp></a></li>
|
||||
<li><a href="array/remove.html"><boost/preprocessor/array/remove.hpp></a></li>
|
||||
<li><a href="array/replace.html"><boost/preprocessor/array/replace.hpp></a></li>
|
||||
<li><a href="array/reverse.html"><boost/preprocessor/array/reverse.hpp></a></li>
|
||||
<li><a href="array/size.html"><boost/preprocessor/array/size.hpp></a></li>
|
||||
<li><a href="array/to_list.html"><boost/preprocessor/array/to_list.hpp></a></li>
|
||||
<li><a href="array/to_seq.html"><boost/preprocessor/array/to_seq.hpp></a></li>
|
||||
<li><a href="array/to_tuple.html"><boost/preprocessor/array/to_tuple.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/array/data.html
Normal file
30
doc/headers/array/data.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/data.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/data.hpp</b> header defines a macro to extract the <i>tuple</i> data from an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/data.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_data.html">BOOST_PP_ARRAY_DATA</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/array/elem.html
Normal file
30
doc/headers/array/elem.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/elem.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/elem.hpp</b> header defines a macro to extract elements from an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/elem.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_elem.html">BOOST_PP_ARRAY_ELEM</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
24
doc/headers/array/enum.html
Normal file
24
doc/headers/array/enum.html
Normal file
@ -0,0 +1,24 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/enum.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>array/enum.hpp</b> header
|
||||
defines a macro to convert an <i>array</i> to its comma-separated elements. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> #include <b><boost/preprocessor/array/enum.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_enum.html">BOOST_PP_ARRAY_ENUM</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/array/insert.html
Normal file
31
doc/headers/array/insert.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/insert.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/insert.hpp</b> header defines macros to insert an element into an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/insert.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_insert.html">BOOST_PP_ARRAY_INSERT</a></li>
|
||||
<li><a href="../../ref/array_insert_d.html">BOOST_PP_ARRAY_INSERT_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/array/pop_back.html
Normal file
31
doc/headers/array/pop_back.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/pop_back.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/pop_back.hpp</b> header defines macros to pop an element from the end of an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/pop_back.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_pop_back.html">BOOST_PP_ARRAY_POP_BACK</a></li>
|
||||
<li><a href="../../ref/array_pop_back_z.html">BOOST_PP_ARRAY_POP_BACK_Z</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/array/pop_front.html
Normal file
31
doc/headers/array/pop_front.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/pop_front.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/pop_front.hpp</b> header defines macros to pop an element from the beginning of an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/pop_front.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_pop_front.html">BOOST_PP_ARRAY_POP_FRONT</a></li>
|
||||
<li><a href="../../ref/array_pop_front_z.html">BOOST_PP_ARRAY_POP_FRONT_Z</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/array/push_back.html
Normal file
30
doc/headers/array/push_back.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/push_back.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/push_back.hpp</b> header defines a macro to append an element to the end of an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/push_back.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_push_back.html">BOOST_PP_ARRAY_PUSH_BACK</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/array/push_front.html
Normal file
30
doc/headers/array/push_front.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/push_front.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/push_front.hpp</b> header defines a macro to append an element to the beginning of an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/push_front.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_push_front.html">BOOST_PP_ARRAY_PUSH_FRONT</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/array/remove.html
Normal file
31
doc/headers/array/remove.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/remove.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/remove.hpp</b> header defines macros to remove an element from an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/remove.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_remove.html">BOOST_PP_ARRAY_REMOVE</a></li>
|
||||
<li><a href="../../ref/array_remove_d.html">BOOST_PP_ARRAY_REMOVE_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/array/replace.html
Normal file
31
doc/headers/array/replace.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/replace.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/replace.hpp</b> header defines macros to replace an element in an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/replace.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_replace.html">BOOST_PP_ARRAY_REPLACE</a></li>
|
||||
<li><a href="../../ref/array_replace_d.html">BOOST_PP_ARRAY_REPLACE_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/array/reverse.html
Normal file
30
doc/headers/array/reverse.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/reverse.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/reverse.hpp</b> header defines macros to reverse the elements in an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/reverse.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_reverse.html">BOOST_PP_ARRAY_REVERSE</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/array/size.html
Normal file
30
doc/headers/array/size.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/size.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>array/size.hpp</b> header defines a macro that extracts the size of an <i>array</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/array/size.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_size.html">BOOST_PP_ARRAY_SIZE</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
24
doc/headers/array/to_list.html
Normal file
24
doc/headers/array/to_list.html
Normal file
@ -0,0 +1,24 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/to_list.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>array/to_list.hpp</b> header
|
||||
defines a macro that converts an <i>array</i> to a <i>list</i>. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> #include <b><boost/preprocessor/array/to_list.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_to_list.html">BOOST_PP_ARRAY_TO_LIST</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
24
doc/headers/array/to_seq.html
Normal file
24
doc/headers/array/to_seq.html
Normal file
@ -0,0 +1,24 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/to_seq.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>array/to_seq.hpp</b> header
|
||||
defines a macro that converts an <i>array</i> to a <i>seq.</i> </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> #include <b><boost/preprocessor/array/to_seq.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_to_seq.html">BOOST_PP_ARRAY_TO_SEQ</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
24
doc/headers/array/to_tuple.html
Normal file
24
doc/headers/array/to_tuple.html
Normal file
@ -0,0 +1,24 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>array/to_tuple.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>array/to_tuple.hpp</b> header
|
||||
defines a macro that converts an <i>array </i>to a <i>tuple</i>. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> #include <b><boost/preprocessor/array/to_tuple.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/array_to_tuple.html">BOOST_PP_ARRAY_TO_TUPLE</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/assert_msg.html
Normal file
31
doc/headers/assert_msg.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>assert_msg.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>assert_msg.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/assert_msg.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="debug/assert.html"><boost/preprocessor/debug/assert.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/cat.html
Normal file
30
doc/headers/cat.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>cat.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>cat.hpp</b> header defines a concatenation macro.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/cat.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../ref/cat.html">BOOST_PP_CAT</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comma.html
Normal file
31
doc/headers/comma.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comma.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comma.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comma.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="punctuation/comma.html"><boost/preprocessor/punctuation/comma.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comma_if.html
Normal file
31
doc/headers/comma_if.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comma_if.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comma_if.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comma_if.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="punctuation/comma_if.html"><boost/preprocessor/punctuation/comma_if.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
35
doc/headers/comparison.html
Normal file
35
doc/headers/comparison.html
Normal file
@ -0,0 +1,35 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison.hpp</b> includes the headers in the <i>comparison</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="comparison/equal.html"><boost/preprocessor/comparison/equal.hpp></a></li>
|
||||
<li><a href="comparison/greater.html"><boost/preprocessor/comparison/greater.hpp></a></li>
|
||||
<li><a href="comparison/greater_equal.html"><boost/preprocessor/comparison/greater_equal.hpp></a></li>
|
||||
<li><a href="comparison/less.html"><boost/preprocessor/comparison/less.hpp></a></li>
|
||||
<li><a href="comparison/less_equal.html"><boost/preprocessor/comparison/less_equal.hpp></a></li>
|
||||
<li><a href="comparison/not_equal.html"><boost/preprocessor/comparison/not_equal.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comparison/equal.html
Normal file
31
doc/headers/comparison/equal.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison/equal.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison/equal.hpp</b> header defines macros that compare for equality.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison/equal.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/equal.html">BOOST_PP_EQUAL</a></li>
|
||||
<li><a href="../../ref/equal_d.html">BOOST_PP_EQUAL_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comparison/greater.html
Normal file
31
doc/headers/comparison/greater.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison/greater.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison/greater.hpp</b> header defines macros that compare for greater magnitude.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison/greater.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/greater.html">BOOST_PP_GREATER</a></li>
|
||||
<li><a href="../../ref/greater_d.html">BOOST_PP_GREATER_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comparison/greater_equal.html
Normal file
31
doc/headers/comparison/greater_equal.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison/greater_equal.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison/greater_equal.hpp</b> header defines macros that compare for equality or greater magnitude.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison/greater_equal.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/greater_equal.html">BOOST_PP_GREATER_EQUAL</a></li>
|
||||
<li><a href="../../ref/greater_equal_d.html">BOOST_PP_GREATER_EQUAL_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comparison/less.html
Normal file
31
doc/headers/comparison/less.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison/less.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison/less.hpp</b> header defines macros that compare for lesser magnitude.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison/less.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/less.html">BOOST_PP_LESS</a></li>
|
||||
<li><a href="../../ref/less_d.html">BOOST_PP_LESS_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comparison/less_equal.html
Normal file
31
doc/headers/comparison/less_equal.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison/less_equal.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison/less_equal.hpp</b> header defines macros that compare for equality or lesser magnitude.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison/less_equal.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/less_equal.html">BOOST_PP_LESS_EQUAL</a></li>
|
||||
<li><a href="../../ref/less_equal_d.html">BOOST_PP_LESS_EQUAL_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/comparison/not_equal.html
Normal file
31
doc/headers/comparison/not_equal.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>comparison/not_equal.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>comparison/not_equal.hpp</b> header defines macros that compare for equality.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/comparison/not_equal.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/not_equal.html">BOOST_PP_NOT_EQUAL</a></li>
|
||||
<li><a href="../../ref/not_equal_d.html">BOOST_PP_NOT_EQUAL_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
44
doc/headers/config/limits.html
Normal file
44
doc/headers/config/limits.html
Normal file
@ -0,0 +1,44 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>config/limits.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>config/limits.hpp</b> header defines various library limits.
|
||||
</div>
|
||||
<h4>
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/config/limits.hpp></b>
|
||||
</div>
|
||||
<h4>
|
||||
Contents
|
||||
</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/limit_dim.html">BOOST_PP_LIMIT_DIM</a></li>
|
||||
<li><a href="../../ref/limit_for.html">BOOST_PP_LIMIT_FOR</a></li>
|
||||
<li><a href="../../ref/limit_iteration.html">BOOST_PP_LIMIT_ITERATION</a></li>
|
||||
<li><a href="../../ref/limit_iteration_dim.html">BOOST_PP_LIMIT_ITERATION_DIM</a></li>
|
||||
<li><a href="../../ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a></li>
|
||||
<li><a href="../../ref/limit_repeat.html">BOOST_PP_LIMIT_REPEAT</a></li>
|
||||
<li><a href="../../ref/limit_seq.html">BOOST_PP_LIMIT_SEQ</a></li>
|
||||
<li><a href="../../ref/limit_slot_count.html">BOOST_PP_LIMIT_SLOT_COUNT</a></li>
|
||||
<li><a href="../../ref/limit_slot_sig.html">BOOST_PP_LIMIT_SLOT_SIG</a></li>
|
||||
<li><a href="../../ref/limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
|
||||
<li><a href="../../ref/limit_while.html">BOOST_PP_LIMIT_WHILE</a></li>
|
||||
<li><a href="../../ref/limit_variadic.html">BOOST_PP_LIMIT_VARIADIC</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
35
doc/headers/config/variadics.html
Normal file
35
doc/headers/config/variadics.html
Normal file
@ -0,0 +1,35 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
<title>config/config.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>config/config.hpp</b>
|
||||
header defines internal configuration macros as well as a macro
|
||||
for determining whether the compiler's preprocessor conforms to
|
||||
the standard. The file is automatically included whenever any
|
||||
Boost PP macros are used.The end-user can manually include it
|
||||
in order to use the BOOST_PP_IS_STANDARD macro, but normally
|
||||
should never have to do so.</div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> #include <b><boost/preprocessor/config/config.hpp></b>
|
||||
</div>
|
||||
<h4> Contents </h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
|
||||
</li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"><i><EFBFBD> Copyright Edward Diener
|
||||
2011,2014,2020</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version
|
||||
1.0. (See accompanying file <a
|
||||
href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
35
doc/headers/control.html
Normal file
35
doc/headers/control.html
Normal file
@ -0,0 +1,35 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control.hpp</b> includes the headers in the <i>control</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="control/deduce_d.html"><boost/preprocessor/control/deduce_d.hpp></a></li>
|
||||
<li><a href="control/expr_if.html"><boost/preprocessor/control/expr_if.hpp></a></li>
|
||||
<li><a href="control/expr_iif.html"><boost/preprocessor/control/expr_iif.hpp></a></li>
|
||||
<li><a href="control/if.html"><boost/preprocessor/control/if.hpp></a></li>
|
||||
<li><a href="control/iif.html"><boost/preprocessor/control/iif.hpp></a></li>
|
||||
<li><a href="control/while.html"><boost/preprocessor/control/while.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/control/deduce_d.html
Normal file
30
doc/headers/control/deduce_d.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control/deduce_d.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control/deduce_d.hpp</b> header defines a macro to manually deduce the current state of the <b>BOOST_PP_WHILE</b> construct.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control/deduce_d.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/deduce_d.html">BOOST_PP_DEDUCE_D</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/control/expr_if.html
Normal file
30
doc/headers/control/expr_if.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control/expr_if.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control/expr_if.hpp</b> header defines a macro that expands to an expression selectively.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control/expr_if.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/expr_if.html">BOOST_PP_EXPR_IF</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/control/expr_iif.html
Normal file
30
doc/headers/control/expr_iif.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control/expr_iif.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control/expr_iif.hpp</b> header defines a macro that expands to an expression selectively.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control/expr_iif.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/expr_iif.html">BOOST_PP_EXPR_IIF</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/control/if.html
Normal file
30
doc/headers/control/if.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control/if.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control/if.hpp</b> header defines a macro that chooses between two alternatives.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control/if.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/if.html">BOOST_PP_IF</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/control/iif.html
Normal file
30
doc/headers/control/iif.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control/iif.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control/iif.hpp</b> header defines a macro that chooses between two alternatives.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control/iif.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/iif.html">BOOST_PP_IIF</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/control/while.html
Normal file
31
doc/headers/control/while.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>control/while.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>control/while.hpp</b> header defines a looping contruct.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/control/while.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/while.html">BOOST_PP_WHILE</a></li>
|
||||
<li><a href="../../ref/while_d.html">BOOST_PP_WHILE_<i>d</i></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/debug.html
Normal file
31
doc/headers/debug.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>debug.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>debug.hpp</b> includes the headers in the <i>debug</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/debug.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="debug/assert.html"><boost/preprocessor/debug/assert.hpp></a></li>
|
||||
<li><a href="debug/line.html"><boost/preprocessor/debug/line.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/debug/assert.html
Normal file
31
doc/headers/debug/assert.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>debug/assert.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>debug/assert.hpp</b> header defines macros for preprocessing-time assertions.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/debug/assert.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/assert.html">BOOST_PP_ASSERT</a></li>
|
||||
<li><a href="../../ref/assert_msg.html">BOOST_PP_ASSERT_MSG</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/debug/line.html
Normal file
30
doc/headers/debug/line.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>debug/line.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>debug/line.hpp</b> header defines macros for preprocessing-time assertions.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/debug/line.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/line.html">BOOST_PP_LINE</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/dec.html
Normal file
31
doc/headers/dec.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>dec.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>dec.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/dec.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="arithmetic/dec.html"><boost/preprocessor/arithmetic/dec.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/empty.html
Normal file
31
doc/headers/empty.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>empty.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>empty.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/empty.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="facilities/empty.html"><boost/preprocessor/facilities/empty.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/enum.html
Normal file
31
doc/headers/enum.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>enum.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>enum.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/enum.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/enum.html"><boost/preprocessor/repetition/enum.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/enum_params.html
Normal file
31
doc/headers/enum_params.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>enum_params.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>enum_params.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/enum_params.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/enum_params.html"><boost/preprocessor/repetition/enum_params.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/enum_shifted.html
Normal file
31
doc/headers/enum_shifted.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>enum_shifted.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>enum_shifted.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/enum_shifted.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/enum_shifted.html"><boost/preprocessor/repetition/enum_shifted.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/enum_shifted_params.html
Normal file
31
doc/headers/enum_shifted_params.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>enum_shifted_params.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>enum_shifted_params.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/enum_shifted_params.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/enum_shifted_params.html"><boost/preprocessor/repetition/enum_shifted_params.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/epwad.html
Normal file
31
doc/headers/epwad.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>enum_params_with_a_default.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>enum_params_with_a_default.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/enum_params_with_a_default.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/epwad.html"><boost/preprocessor/repetition/enum_params_with_a_default.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/epwd.html
Normal file
31
doc/headers/epwd.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>enum_params_with_defaults.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>enum_params_with_defaults.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/enum_params_with_defaults.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/epwd.html"><boost/preprocessor/repetition/enum_params_with_defaults.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/expand.html
Normal file
31
doc/headers/expand.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>expand.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>expand.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/expand.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="facilities/expand.html"><boost/preprocessor/facilities/expand.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/expr_if.html
Normal file
31
doc/headers/expr_if.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>expr_if.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>expr_if.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/expr_if.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="control/expr_if.html"><boost/preprocessor/control/expr_if.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
35
doc/headers/facilities.html
Normal file
35
doc/headers/facilities.html
Normal file
@ -0,0 +1,35 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities.hpp</b> includes the headers in the <i>facilities</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="facilities/apply.html"><boost/preprocessor/facilities/apply.hpp></a></li>
|
||||
<li><a href="facilities/empty.html"><boost/preprocessor/facilities/empty.hpp></a></li>
|
||||
<li><a href="facilities/check_empty.html"><boost/preprocessor/facilities/check_empty.hpp></a> <a href="../topics/variadic_macros.html#VNotation" target="_self">(v)</a></li>
|
||||
<li><a href="facilities/expand.html"><boost/preprocessor/facilities/expand.hpp></a></li>
|
||||
<li><a href="facilities/identity.html"><boost/preprocessor/facilities/identity.hpp></a></li>
|
||||
<li><a href="facilities/intercept.html"><boost/preprocessor/facilities/intercept.hpp></a></li>
|
||||
<li><a href="facilities/overload.html"><boost/preprocessor/facilities/overload.hpp></a> <a href="../topics/variadic_macros.html#VNotation" target="_self">(v)</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/facilities/apply.html
Normal file
30
doc/headers/facilities/apply.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/apply.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/apply.hpp</b> header defines facilities that abstract the difference between an argument and nothing.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/apply.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/apply.html">BOOST_PP_APPLY</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
29
doc/headers/facilities/check_empty.html
Normal file
29
doc/headers/facilities/check_empty.html
Normal file
@ -0,0 +1,29 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/check_empty.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/check_empty.hpp</b> header defines a variadic macro for the C++20 level that checks if its data is empty or not.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/check_empty.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/check_empty.html">BOOST_PP_CHECK_EMPTY</a> <a href="../../topics/variadic_macros.html#VNotation" target="_self">(v)</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i></i><i><EFBFBD> Copyright Edward Diener 2019</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/facilities/empty.html
Normal file
30
doc/headers/facilities/empty.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/empty.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/empty.hpp</b> header defines a nullary macro that expands to nothing.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/empty.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/empty.html">BOOST_PP_EMPTY</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/facilities/expand.html
Normal file
30
doc/headers/facilities/expand.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/expand.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/expand.hpp</b> header defines a macro that causes double expansion.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/expand.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/expand.html">BOOST_PP_EXPAND</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
32
doc/headers/facilities/identity.html
Normal file
32
doc/headers/facilities/identity.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/identity.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/identity.hpp</b> header defines utility macros to use with <b>BOOST_PP_IF</b> and <b>BOOST_PP_IIF</b>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/identity.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/identity.html">BOOST_PP_IDENTITY</a></li>
|
||||
<li><a href="../../ref/identity_n.html">BOOST_PP_IDENTITY_N</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</br><i><EFBFBD> Copyright Edward Diener 2015</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/facilities/intercept.html
Normal file
30
doc/headers/facilities/intercept.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/intercept.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/intercept.hpp</b> header defines a utility macro to intercept a numeric concatenation.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/intercept.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/intercept.html">BOOST_PP_INTERCEPT</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
28
doc/headers/facilities/overload.html
Normal file
28
doc/headers/facilities/overload.html
Normal file
@ -0,0 +1,28 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>facilities/overload.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>facilities/overload.hpp</b> header defines variadic macros that overload non-variadic macros to accept different numbers of parameters.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/facilities/overload.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/overload.html">BOOST_PP_OVERLOAD</a> <a href="../../topics/variadic_macros.html#VNotation" target="_self">(v)</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i></i><i><EFBFBD> Copyright Edward Diener 2011,2013</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
32
doc/headers/facilities/va_opt.html
Normal file
32
doc/headers/facilities/va_opt.html
Normal file
@ -0,0 +1,32 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;
|
||||
charset=windows-1252">
|
||||
<title>facilities/va_opt.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>facilities/va_opt.hpp</b>
|
||||
header defines a variadic macro for the C++20 level that offers a
|
||||
more flexible alternative to the __VA_OPT__ construct. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> #include <b><boost/preprocessor/facilities/va_opt.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/va_opt.html">BOOST_PP_VA_OPT</a> <a
|
||||
href="../../topics/variadic_macros.html#VNotation"
|
||||
target="_self">(v)</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2019</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version
|
||||
1.0. (See accompanying file <a
|
||||
href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/for.html
Normal file
31
doc/headers/for.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>for.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>for.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/for.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="repetition/for.html"><boost/preprocessor/repetition/for.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/identity.html
Normal file
31
doc/headers/identity.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>identity.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>identity.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/identity.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="facilities/identity.html"><boost/preprocessor/facilities/identity.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/if.html
Normal file
31
doc/headers/if.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>if.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>if.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/if.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="control/if.html"><boost/preprocessor/control/if.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/inc.html
Normal file
31
doc/headers/inc.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>inc.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>inc.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/inc.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="arithmetic/inc.html"><boost/preprocessor/arithmetic/inc.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/headers/iterate.html
Normal file
31
doc/headers/iterate.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>iterate.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>iterate.hpp</b> is a jumper header for backwards compatibility.
|
||||
This header is deprecated.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/iterate.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="iteration/iterate.html"><boost/preprocessor/iteration/iterate.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
32
doc/headers/iteration.html
Normal file
32
doc/headers/iteration.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>iteration.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>iteration.hpp</b> includes the headers in the <i>iteration</i> folder.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/iteration.hpp></b>
|
||||
</div>
|
||||
<h4>Includes</h4>
|
||||
<ul>
|
||||
<li><a href="iteration/iterate.html"><boost/preprocessor/iteration/iterate.hpp></a></li>
|
||||
<li><a href="iteration/local.html"><boost/preprocessor/iteration/local.hpp></a></li>
|
||||
<li><a href="iteration/self.html"><boost/preprocessor/iteration/self.hpp></a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
43
doc/headers/iteration/iterate.html
Normal file
43
doc/headers/iteration/iterate.html
Normal file
@ -0,0 +1,43 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>iteration/iterate.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>iteration/iterate.hpp</b> header defines a macros to interface with the <i>file-iteration</i> mechanism.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/iteration/iterate.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/frame_finish.html">BOOST_PP_FRAME_FINISH</a></li>
|
||||
<li><a href="../../ref/frame_flags.html">BOOST_PP_FRAME_FLAGS</a></li>
|
||||
<li><a href="../../ref/frame_iteration.html">BOOST_PP_FRAME_ITERATION</a></li>
|
||||
<li><a href="../../ref/frame_start.html">BOOST_PP_FRAME_START</a></li>
|
||||
<li><a href="../../ref/iterate.html">BOOST_PP_ITERATE</a></li>
|
||||
<li><a href="../../ref/iteration.html">BOOST_PP_ITERATION</a></li>
|
||||
<li><a href="../../ref/iteration_depth.html">BOOST_PP_ITERATION_DEPTH</a></li>
|
||||
<li><a href="../../ref/iteration_finish.html">BOOST_PP_ITERATION_FINISH</a></li>
|
||||
<li><a href="../../ref/iteration_flags.html">BOOST_PP_ITERATION_FLAGS</a></li>
|
||||
<li><a href="../../ref/iteration_start.html">BOOST_PP_ITERATION_START</a></li>
|
||||
<li><a href="../../ref/relative_finish.html">BOOST_PP_RELATIVE_FINISH</a></li>
|
||||
<li><a href="../../ref/relative_flags.html">BOOST_PP_RELATIVE_FLAGS</a></li>
|
||||
<li><a href="../../ref/relative_iteration.html">BOOST_PP_RELATIVE_ITERATION</a></li>
|
||||
<li><a href="../../ref/relative_start.html">BOOST_PP_RELATIVE_START</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/iteration/local.html
Normal file
30
doc/headers/iteration/local.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>iteration/local.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>iteration/local.hpp</b> header defines a macro to interface with the <i>local-iteration</i> mechanism.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/iteration/local.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/local_iterate.html">BOOST_PP_LOCAL_ITERATE</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/headers/iteration/self.html
Normal file
30
doc/headers/iteration/self.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>iteration/self.hpp</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>iteration/self.hpp</b> header defines a macro to facilitate self-inclusion.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
#include <b><boost/preprocessor/iteration/self.hpp></b>
|
||||
</div>
|
||||
<h4>Contents</h4>
|
||||
<ul>
|
||||
<li><a href="../../ref/include_self.html">BOOST_PP_INCLUDE_SELF</a></li>
|
||||
</ul>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user