|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r69671 - in trunk/libs/spirit: optimization/qi repository/doc/qi test/qi
From: joel_at_[hidden]
Date: 2011-03-07 21:18:42
Author: djowel
Date: 2011-03-07 21:18:41 EST (Mon, 07 Mar 2011)
New Revision: 69671
URL: http://svn.boost.org/trac/boost/changeset/69671
Log:
keywords patch
Added:
trunk/libs/spirit/optimization/qi/keywords.hpp (contents, props changed)
trunk/libs/spirit/repository/doc/qi/keywords.qbk (contents, props changed)
trunk/libs/spirit/repository/doc/qi/operators.qbk (contents, props changed)
Text files modified:
trunk/libs/spirit/test/qi/sequence.cpp | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Added: trunk/libs/spirit/optimization/qi/keywords.hpp
==============================================================================
--- (empty file)
+++ trunk/libs/spirit/optimization/qi/keywords.hpp 2011-03-07 21:18:41 EST (Mon, 07 Mar 2011)
@@ -0,0 +1,49 @@
+/*=============================================================================
+ Copyright (c) 2011 Thomas Bernard
+
+ 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)
+=============================================================================*/
+
+#if defined(KEYS_1)
+#define keys ("WeaBGNogxKwkyFilMHOp")
+
+const std::string fwd = "test WeaBGNogxKwkyFilMHOp 1655 ";
+const std::string back = "test WeaBGNogxKwkyFilMHOp 1372 ";
+#endif
+#if defined(KEYS_5)
+#define keys ("xSjJfIbmYDvQHhKTLZca")("JPvLQbGsXantCZpoeEiB")("MAZjzUrtdRSmhNnqxPVX")("PhuXTxIQCijHnZgUkLMY")("yQbTUMoPqwKvpIzekhfY")
+
+const std::string fwd = "test xSjJfIbmYDvQHhKTLZca 1450 JPvLQbGsXantCZpoeEiB 1691 MAZjzUrtdRSmhNnqxPVX 64 PhuXTxIQCijHnZgUkLMY 640 yQbTUMoPqwKvpIzekhfY 135";
+const std::string back = "test yQbTUMoPqwKvpIzekhfY 1903 PhuXTxIQCijHnZgUkLMY 404 MAZjzUrtdRSmhNnqxPVX 1473 JPvLQbGsXantCZpoeEiB 1478 xSjJfIbmYDvQHhKTLZca 1063";
+#endif
+#if defined(KEYS_10)
+#define keys ("briLcUzOEDAswdGuIXlp")("ZwKsyzktMrnERbDLThlB")("QCvkgGRYrmDVfiApzStM")("FUsjQAtlVrYSBmLvzxid")("gcvoqwKZIGMxatCdkDLH")("zmoqaLnEjGstTIbDkhBe")("cMQikmaJZgfEDIeNYGxK")("dufrWGRjHqZOENKhJitl")("MJKlZWrFVBLoUfjDcREw")("yVaJUIlYvumSdpTEXhKB")
+
+const std::string fwd = "test briLcUzOEDAswdGuIXlp 1580 ZwKsyzktMrnERbDLThlB 301 QCvkgGRYrmDVfiApzStM 301 FUsjQAtlVrYSBmLvzxid 1050 gcvoqwKZIGMxatCdkDLH 229 zmoqaLnEjGstTIbDkhBe 1962 cMQikmaJZgfEDIeNYGxK 789 dufrWGRjHqZOENKhJitl 1991 MJKlZWrFVBLoUfjDcREw 1819 yVaJUIlYvumSdpTEXhKB 193 ";
+const std::string back = "test yVaJUIlYvumSdpTEXhKB 1009 MJKlZWrFVBLoUfjDcREw 1585 dufrWGRjHqZOENKhJitl 313 cMQikmaJZgfEDIeNYGxK 791 zmoqaLnEjGstTIbDkhBe 544 gcvoqwKZIGMxatCdkDLH 672 FUsjQAtlVrYSBmLvzxid 78 QCvkgGRYrmDVfiApzStM 1069 ZwKsyzktMrnERbDLThlB 1741 briLcUzOEDAswdGuIXlp 1051 ";
+#endif
+#if defined(KEYS_20)
+#define keys ("yTMiuczAoDwJhIBCGvPl")("JUTVaEqDepvsiXwBgSYd")("voeXaAjyCqKtFxRhEblz")("rvQaNuXGkILPcdnSbWKw")("DWrTLiQlHhIjCXVEgGtw")("OMjiwLbahJdCzUGNmoZX")("FDNwcClbuBHeShriUfMK")("FkXLDcdKfJmjtgpAvVSG")("gjQWltFPcdvkBOnEbpGr")("MHkicpLbzqOFUVgnrQZG")("RPLWdKwJZAgsmFeqXnNx")("mdRMYcEfbezLguxOXBhF")("QsiEYSpTjonBqHLUaWzD")("POZcyDElsqoJGmSpQXrw")("PlscizNMqaYvLZBTxtQA")("zhxamRtXHuoyriGJjSIn")("YDAuwLaZEnNGgIJCUepR")("ogOdBYzCEJZqMHmuRsPt")("gWFzoLBUheNwlVrcOYbT")("pKcMQIkvriCLxfSDNEXA")
+
+const std::string fwd = "test yTMiuczAoDwJhIBCGvPl 1021 JUTVaEqDepvsiXwBgSYd 1480 voeXaAjyCqKtFxRhEblz 255 rvQaNuXGkILPcdnSbWKw 1792 DWrTLiQlHhIjCXVEgGtw 1117 OMjiwLbahJdCzUGNmoZX 920 FDNwcClbuBHeShriUfMK 924 FkXLDcdKfJmjtgpAvVSG 1798 gjQWltFPcdvkBOnEbpGr 1298 MHkicpLbzqOFUVgnrQZG 673 RPLWdKwJZAgsmFeqXnNx 35 mdRMYcEfbezLguxOXBhF 703 QsiEYSpTjonBqHLUaWzD 595 POZcyDElsqoJGmSpQXrw 798 PlscizNMqaYvLZBTxtQA 780 zhxamRtXHuoyriGJjSIn 385 YDAuwLaZEnNGgIJCUepR 1834 ogOdBYzCEJZqMHmuRsPt 43 gWFzoLBUheNwlVrcOYbT 1885 pKcMQIkvriCLxfSDNEXA 1397 ";
+const std::string back = "test pKcMQIkvriCLxfSDNEXA 1885 gWFzoLBUheNwlVrcOYbT 978 ogOdBYzCEJZqMHmuRsPt 929 YDAuwLaZEnNGgIJCUepR 1929 zhxamRtXHuoyriGJjSIn 859 PlscizNMqaYvLZBTxtQA 1505 POZcyDElsqoJGmSpQXrw 1317 QsiEYSpTjonBqHLUaWzD 122 mdRMYcEfbezLguxOXBhF 610 RPLWdKwJZAgsmFeqXnNx 133 MHkicpLbzqOFUVgnrQZG 371 gjQWltFPcdvkBOnEbpGr 1770 FkXLDcdKfJmjtgpAvVSG 128 FDNwcClbuBHeShriUfMK 1829 OMjiwLbahJdCzUGNmoZX 1187 DWrTLiQlHhIjCXVEgGtw 822 rvQaNuXGkILPcdnSbWKw 1321 voeXaAjyCqKtFxRhEblz 855 JUTVaEqDepvsiXwBgSYd 219 yTMiuczAoDwJhIBCGvPl 1209 ";
+#endif
+#if defined(KEYS_30)
+#define keys ("GgrRUxIZCFYkpnsvyzwb")("fLpJmgZEQAKdbcSuNFPr")("aMZVkzfvrXLyPjeUBRus")("gBefvhWdnzbEGHLmUDpO")("fXZnwLWDeNtrMQzhqOsb")("CusxSlJpKvtmOHrBjzAX")("yufeisPwaUIKtNYVTAbC")("WMCzLygdkDHAOEpJeSBr")("lxQzaLBHwTvXJZUMyVho")("JdPxVYOgsGUEFBtvmZkL")("wPaFKqnJRfuODGWLvkgA")("iwJpIslCdTqEnMQocbxN")("vRQzSrpTMCKhwABHLPDx")("xHAJatdSfnXevMYKwLcV")("mEDZwUnfxzAaqkpQlNKr")("rHQwgpxqPsWzJGVlYEMn")("vczEywanJWBrMHIhLDKx")("rWpuIPmoReFSBGNYLUXJ")("cHNZVmYAOpkBRwWUhyae")("tNOpTMRadcHjLDUAoyvX")("bRLrhnmXvdyTZcHWQgDB")("STpWfPAhqQvjsdkHeZlU")("JsMdBawTzIgPGouHipRl")("qEHdLhXwsmSfbaoWkGiM")("jrZHNnElwcPAbsOFzdfT")("NvarfYcMCUXqxbDwgRVT")("zwOxryohHjCuNpnKDPdl")("mHOtuLrZKveTjsbzApan")("qFEHhLbeWpUtaozKCBSX")("pnlSjeQETKfRwNvOYDdJ")
+
+const std::string fwd = "test GgrRUxIZCFYkpnsvyzwb 573 fLpJmgZEQAKdbcSuNFPr 1748 aMZVkzfvrXLyPjeUBRus 919 gBefvhWdnzbEGHLmUDpO 1491 fXZnwLWDeNtrMQzhqOsb 1023 CusxSlJpKvtmOHrBjzAX 656 yufeisPwaUIKtNYVTAbC 1963 WMCzLygdkDHAOEpJeSBr 1171 lxQzaLBHwTvXJZUMyVho 51 JdPxVYOgsGUEFBtvmZkL 125 wPaFKqnJRfuODGWLvkgA 273 iwJpIslCdTqEnMQocbxN 58 vRQzSrpTMCKhwABHLPDx 347 xHAJatdSfnXevMYKwLcV 440 mEDZwUnfxzAaqkpQlNKr 442 rHQwgpxqPsWzJGVlYEMn 1527 vczEywanJWBrMHIhLDKx 1671 rWpuIPmoReFSBGNYLUXJ 457 cHNZVmYAOpkBRwWUhyae 1721 tNOpTMRadcHjLDUAoyvX 919 bRLrhnmXvdyTZcHWQgDB 317 STpWfPAhqQvjsdkHeZlU 1886 JsMdBawTzIgPGouHipRl 352 qEHdLhXwsmSfbaoWkGiM 1641 jrZHNnElwcPAbsOFzdfT 1430 NvarfYcMCUXqxbDwgRVT 383 zwOxryohHjCuNpnKDPdl 402 mHOtuLrZKveTjsbzApan 46 qFEHhLbeWpUtaozKCBSX 681 pnlSjeQETKfRwNvOYDdJ 36 ";
+const std::string back = "test pnlSjeQETKfRwNvOYDdJ 976 qFEHhLbeWpUtaozKCBSX 1787 mHOtuLrZKveTjsbzApan 832 zwOxryohHjCuNpnKDPdl 487 NvarfYcMCUXqxbDwgRVT 1973 jrZHNnElwcPAbsOFzdfT 68 qEHdLhXwsmSfbaoWkGiM 157 JsMdBawTzIgPGouHipRl 1017 STpWfPAhqQvjsdkHeZlU 74 bRLrhnmXvdyTZcHWQgDB 1010 tNOpTMRadcHjLDUAoyvX 313 cHNZVmYAOpkBRwWUhyae 521 rWpuIPmoReFSBGNYLUXJ 1286 vczEywanJWBrMHIhLDKx 1942 rHQwgpxqPsWzJGVlYEMn 1048 mEDZwUnfxzAaqkpQlNKr 1170 xHAJatdSfnXevMYKwLcV 152 vRQzSrpTMCKhwABHLPDx 1330 iwJpIslCdTqEnMQocbxN 1927 wPaFKqnJRfuODGWLvkgA 1347 JdPxVYOgsGUEFBtvmZkL 1569 lxQzaLBHwTvXJZUMyVho 766 WMCzLygdkDHAOEpJeSBr 966 yufeisPwaUIKtNYVTAbC 186 CusxSlJpKvtmOHrBjzAX 1494 fXZnwLWDeNtrMQzhqOsb 1722 gBefvhWdnzbEGHLmUDpO 1829 aMZVkzfvrXLyPjeUBRus 134 fLpJmgZEQAKdbcSuNFPr 963 GgrRUxIZCFYkpnsvyzwb 465 ";
+#endif
+#if defined(KEYS_40)
+#define keys ("xjSUvfTWlVeoLEtdmKBz")("HSDfyWRmjsxiXFOJQvoT")("gvByQMLTjeGdiVXkWqnf")("HZJdriPpDLsvEhfzKXBa")("hMXgUkzBHRbJWvCalsAN")("rOsvXRwgNyTkPDYBzELC")("CbRfwqJONDHFYGzPaZpo")("dUOPAuIDElRjWQeBkiMN")("KTWfmbAeOUhJsuaEvMwr")("QhglZMDOsAYwamrxvPUH")("TNgnvqHzjFyDPlhmVItC")("RxOnIzgaMdpwekBYNvLC")("VnPsKoruveyOUDQtBRGj")("QJcuxWkrsgfviopSDIhC")("ZAhUFndDgemHLTtsCfpu")("HQywNcbTtzpknSsBjJqo")("fCKXUHGBPzkZlTYoSnWy")("FagwxrUtbGizkNcTELfC")("kNvJBuTQZbEfWVYLlrOA")("pHDuhFJBOrzPALCtEWNU")("FczoOhKDLyNgGdfPrUJj")("DPzioljtskSICqveWrxm")("LhbOFicHYwCpdUqJaVgW")("rbVRhimjwDLlvSIFWUxt")("xsUXlLEyVQinuSZjbwGD")("zAGgCYZqhVMkfWavsKeX")("zetXFOmPBZRQJswHYDbj")("ZvwSjyIJBmQRNiVTDpqE")("cixUqrmszRbvpMPhTwVt")("mEeHfzKtrSyUDGcnOlgv")("oqYWiUSKmdJGXBNnlEue")("cTkYIdoQpHbnDhuCywJi")("kGNHjfpBlntPFwygicIL")("PFSwazNXjbGrdAuRKqVk")("drwmptOPlUxgnCjyqWSJ")("CBLImQsdlkXqEfDWpYug")("DHgsPldqzuGxfEnLFriS")("ATRzQeVUgIJuCmcqSPGX")("WiPZTDXgxeAsKFwfamoy")("KgdSxtYMlEqmPJkFRzWQ")
+
+const std::string fwd = "test xjSUvfTWlVeoLEtdmKBz 1324 HSDfyWRmjsxiXFOJQvoT 310 gvByQMLTjeGdiVXkWqnf 671 HZJdriPpDLsvEhfzKXBa 427 hMXgUkzBHRbJWvCalsAN 524 rOsvXRwgNyTkPDYBzELC 1295 CbRfwqJONDHFYGzPaZpo 1233 dUOPAuIDElRjWQeBkiMN 1432 KTWfmbAeOUhJsuaEvMwr 623 QhglZMDOsAYwamrxvPUH 70 TNgnvqHzjFyDPlhmVItC 235 RxOnIzgaMdpwekBYNvLC 170 VnPsKoruveyOUDQtBRGj 918 QJcuxWkrsgfviopSDIhC 619 ZAhUFndDgemHLTtsCfpu 27 HQywNcbTtzpknSsBjJqo 985 fCKXUHGBPzkZlTYoSnWy 1876 FagwxrUtbGizkNcTELfC 1761 kNvJBuTQZbEfWVYLlrOA 1823 pHDuhFJBOrzPALCtEWNU 1872 FczoOhKDLyNgGdfPrUJj 162 DPzioljtskSICqveWrxm 1704 LhbOFicHYwCpdUqJaVgW 405 rbVRhimjwDLlvSIFWUxt 135 xsUXlLEyVQinuSZjbwGD 1555 zAGgCYZqhVMkfWavsKeX 1553 zetXFOmPBZRQJswHYDbj 315 ZvwSjyIJBmQRNiVTDpqE 1844 cixUqrmszRbvpMPhTwVt 949 mEeHfzKtrSyUDGcnOlgv 1293 oqYWiUSKmdJGXBNnlEue 1554 cTkYIdoQpHbnDhuCywJi 1829 kGNHjfpBlntPFwygicIL 191 PFSwazNXjbGrdAuRKqVk 355 drwmptOPlUxgnCjyqWSJ 1403 CBLImQsdlkXqEfDWpYug 57 DHgsPldqzuGxfEnLFriS 748 ATRzQeVUgIJuCmcqSPGX 841 WiPZTDXgxeAsKFwfamoy 1660 Kgd
SxtYMlEqmPJkFRzWQ 1126 ";
+const std::string back = "test KgdSxtYMlEqmPJkFRzWQ 364 WiPZTDXgxeAsKFwfamoy 176 ATRzQeVUgIJuCmcqSPGX 793 DHgsPldqzuGxfEnLFriS 179 CBLImQsdlkXqEfDWpYug 1570 drwmptOPlUxgnCjyqWSJ 1635 PFSwazNXjbGrdAuRKqVk 793 kGNHjfpBlntPFwygicIL 1294 cTkYIdoQpHbnDhuCywJi 966 oqYWiUSKmdJGXBNnlEue 642 mEeHfzKtrSyUDGcnOlgv 830 cixUqrmszRbvpMPhTwVt 1842 ZvwSjyIJBmQRNiVTDpqE 1617 zetXFOmPBZRQJswHYDbj 718 zAGgCYZqhVMkfWavsKeX 587 xsUXlLEyVQinuSZjbwGD 1597 rbVRhimjwDLlvSIFWUxt 770 LhbOFicHYwCpdUqJaVgW 1100 DPzioljtskSICqveWrxm 473 FczoOhKDLyNgGdfPrUJj 74 pHDuhFJBOrzPALCtEWNU 902 kNvJBuTQZbEfWVYLlrOA 749 FagwxrUtbGizkNcTELfC 964 fCKXUHGBPzkZlTYoSnWy 819 HQywNcbTtzpknSsBjJqo 1535 ZAhUFndDgemHLTtsCfpu 859 QJcuxWkrsgfviopSDIhC 1648 VnPsKoruveyOUDQtBRGj 1368 RxOnIzgaMdpwekBYNvLC 757 TNgnvqHzjFyDPlhmVItC 245 QhglZMDOsAYwamrxvPUH 170 KTWfmbAeOUhJsuaEvMwr 671 dUOPAuIDElRjWQeBkiMN 1792 CbRfwqJONDHFYGzPaZpo 1117 rOsvXRwgNyTkPDYBzELC 1293 hMXgUkzBHRbJWvCalsAN 1563 HZJdriPpDLsvEhfzKXBa 675 gvByQMLTjeGdiVXkWqnf 1734 HSDfyWRmjsxiXFOJQvoT 1858 x
jSUvfTWlVeoLEtdmKBz 1030 ";
+#endif
+#if defined(KEYS_50)
+#define keys ("QZMaswnqKlYGVWArzRSm")("EKWLSbqXhjIvQgpJrxnF")("ENVahOdugPMsewLIzGWD")("XeuQTSmbIFZcKvRJNOqP")("nOZjiVoQxeJhgRsPDFSI")("BNFEOLMKgepudtCmrPWR")("ElUzSiPTnCyvtdkeRxKL")("LwkRqhCYgpvjNEIVonWT")("ePqFoWSwgBkRcKvYxCsu")("uImFlasHEAPqzNtKWhTY")("LegKBDklPxyXhwUWMpTd")("wOLlVmQiKMrDdRxjSfcI")("wluBvdVhMazxSUWFCjtZ")("DuRnZmNdsOEeWrqxQFUz")("dQVlbzjCMNSwnRqrofFI")("ivdCbNxuXOWJBUGEjIwh")("gFzqlpbPCZtARScNrvjK")("PtGVUfkdiupEKsIOgjNW")("ucDVgUApjNkPGixQbdMS")("DwRyzVleMbBmOorvNTxX")("TYJjBKcZiFqpWyaLbNhS")("mgTbPuslkvFMrHVENcAY")("zDQxOBgJXswcWIqdMmZa")("jUbvKZIkrCduqtgMyAzx")("NlnChoIEKuXQdwzOvMat")("eNtPxwYzMJCDfsQVlLGA")("DhBpcTgvJtAROaLFMuwz")("QZXfGWqONEmHSytbUTnh")("yJHPXhVSpAwebWnkGxQZ")("UonOKFbImdWhuBspTcEg")("ytOAXPUDGrjgqeEvpTIs")("dEiSHXlCoAsfBhcwTNZJ")("QTtfvRhnVjZKdsOkFCzH")("vbFAtKSRYEskzBruWgXH")("sGLvhxcdbZJoujrwERDp")("QBvJhYMDsgGNfziSkPtF")("TWIfucYJrRQBPyKsFGzg")("sqhuViGvxDAkjLnfpmQC")("YHLhZVGXNOQrzKMFvRWk")("wykaZKTmfOoFHPQDAsqn")("lkzZeRXCHLaOjJDhsKtg")("CaWUzuhvkqHLrwBMbpFo")(
"STLfmxsWGEKRDyzadihv")("svpKlVfeGYjMEkCXbtDS")("GAJxeMwbWCDHiczpslVn")("aqDeBkoTOcrVPtliRzFH")("VvjJPaLxpuRKSDsdmtgY")("WHbLDZABtSFMElKJYPOj")("agKVtLdsSpPzTfOmNxWy")("ZIJokqupeBRrTlHNKChz")
+
+const std::string fwd = "test QZMaswnqKlYGVWArzRSm 1285 EKWLSbqXhjIvQgpJrxnF 966 ENVahOdugPMsewLIzGWD 1122 XeuQTSmbIFZcKvRJNOqP 1863 nOZjiVoQxeJhgRsPDFSI 1738 BNFEOLMKgepudtCmrPWR 842 ElUzSiPTnCyvtdkeRxKL 278 LwkRqhCYgpvjNEIVonWT 983 ePqFoWSwgBkRcKvYxCsu 1387 uImFlasHEAPqzNtKWhTY 282 LegKBDklPxyXhwUWMpTd 635 wOLlVmQiKMrDdRxjSfcI 563 wluBvdVhMazxSUWFCjtZ 1091 DuRnZmNdsOEeWrqxQFUz 1773 dQVlbzjCMNSwnRqrofFI 102 ivdCbNxuXOWJBUGEjIwh 1562 gFzqlpbPCZtARScNrvjK 354 PtGVUfkdiupEKsIOgjNW 1728 ucDVgUApjNkPGixQbdMS 1874 DwRyzVleMbBmOorvNTxX 1594 TYJjBKcZiFqpWyaLbNhS 1654 mgTbPuslkvFMrHVENcAY 89 zDQxOBgJXswcWIqdMmZa 1814 jUbvKZIkrCduqtgMyAzx 559 NlnChoIEKuXQdwzOvMat 748 eNtPxwYzMJCDfsQVlLGA 435 DhBpcTgvJtAROaLFMuwz 1649 QZXfGWqONEmHSytbUTnh 1530 yJHPXhVSpAwebWnkGxQZ 244 UonOKFbImdWhuBspTcEg 1712 ytOAXPUDGrjgqeEvpTIs 124 dEiSHXlCoAsfBhcwTNZJ 1759 QTtfvRhnVjZKdsOkFCzH 1655 vbFAtKSRYEskzBruWgXH 1325 sGLvhxcdbZJoujrwERDp 1979 QBvJhYMDsgGNfziSkPtF 304 TWIfucYJrRQBPyKsFGzg 1721 sqhuViGvxDAkjLnfpmQC 1693 YHLhZVGXNOQrzKMFvRWk
389 wykaZKTmfOoFHPQDAsqn 1592 lkzZeRXCHLaOjJDhsKtg 902 CaWUzuhvkqHLrwBMbpFo 374 STLfmxsWGEKRDyzadihv 1912 svpKlVfeGYjMEkCXbtDS 61 GAJxeMwbWCDHiczpslVn 1652 aqDeBkoTOcrVPtliRzFH 591 VvjJPaLxpuRKSDsdmtgY 1892 WHbLDZABtSFMElKJYPOj 756 agKVtLdsSpPzTfOmNxWy 1866 ZIJokqupeBRrTlHNKChz 1972 ";
+const std::string back = "test ZIJokqupeBRrTlHNKChz 277 agKVtLdsSpPzTfOmNxWy 424 WHbLDZABtSFMElKJYPOj 313 VvjJPaLxpuRKSDsdmtgY 1114 aqDeBkoTOcrVPtliRzFH 1458 GAJxeMwbWCDHiczpslVn 1248 svpKlVfeGYjMEkCXbtDS 225 STLfmxsWGEKRDyzadihv 1745 CaWUzuhvkqHLrwBMbpFo 629 lkzZeRXCHLaOjJDhsKtg 130 wykaZKTmfOoFHPQDAsqn 10 YHLhZVGXNOQrzKMFvRWk 1463 sqhuViGvxDAkjLnfpmQC 1319 TWIfucYJrRQBPyKsFGzg 1057 QBvJhYMDsgGNfziSkPtF 445 sGLvhxcdbZJoujrwERDp 313 vbFAtKSRYEskzBruWgXH 1758 QTtfvRhnVjZKdsOkFCzH 1190 dEiSHXlCoAsfBhcwTNZJ 1008 ytOAXPUDGrjgqeEvpTIs 916 UonOKFbImdWhuBspTcEg 1699 yJHPXhVSpAwebWnkGxQZ 840 QZXfGWqONEmHSytbUTnh 1041 DhBpcTgvJtAROaLFMuwz 699 eNtPxwYzMJCDfsQVlLGA 701 NlnChoIEKuXQdwzOvMat 21 jUbvKZIkrCduqtgMyAzx 1506 zDQxOBgJXswcWIqdMmZa 689 mgTbPuslkvFMrHVENcAY 1292 TYJjBKcZiFqpWyaLbNhS 1015 DwRyzVleMbBmOorvNTxX 1099 ucDVgUApjNkPGixQbdMS 1389 PtGVUfkdiupEKsIOgjNW 820 gFzqlpbPCZtARScNrvjK 1748 ivdCbNxuXOWJBUGEjIwh 240 dQVlbzjCMNSwnRqrofFI 546 DuRnZmNdsOEeWrqxQFUz 1015 wluBvdVhMazxSUWFCjtZ 1058 wOLlVmQiKMrDdRxjSfcI 93
5 LegKBDklPxyXhwUWMpTd 1609 uImFlasHEAPqzNtKWhTY 17 ePqFoWSwgBkRcKvYxCsu 680 LwkRqhCYgpvjNEIVonWT 189 ElUzSiPTnCyvtdkeRxKL 589 BNFEOLMKgepudtCmrPWR 622 nOZjiVoQxeJhgRsPDFSI 741 XeuQTSmbIFZcKvRJNOqP 1843 ENVahOdugPMsewLIzGWD 220 EKWLSbqXhjIvQgpJrxnF 774 QZMaswnqKlYGVWArzRSm 140 ";
+#endif
Added: trunk/libs/spirit/repository/doc/qi/keywords.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/spirit/repository/doc/qi/keywords.qbk 2011-03-07 21:18:41 EST (Mon, 07 Mar 2011)
@@ -0,0 +1,107 @@
+[/==============================================================================
+ Copyright (C) 2001-2011 Joel de Guzman
+ Copyright (C) 2001-2011 Hartmut Kaiser
+ Copyright (C) 2011 Thomas Bernard
+
+ 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)
+===============================================================================/]
+
+[section:keyword_list Keyword List Operator]
+
+[heading Description]
+
+The keyword list operator, `kwd("k1")[a] / kwd("k2")[b]`, works tightly with the kwd, ikwd directives
+to effeciently match keyword lists. As long as one of the keywords specified through the kwd or ikwd directive
+matches, the keyword will be immediatly followed by the the keyword's associated subject parser.
+The parser will continue parsing input as long as the one of the keywords and it's associated parser succeed.
+Writing :
+(kwd("k1")[a] / kwd("k2")[b] / ... )
+is equivalent to:
+*( "k1" > a | "k2" > b ... ).
+
+
+[heading Header]
+
+ // forwards to <boost/spirit/repository/home/qi/operator/keywords.hpp>
+ #include <boost/spirit/repository/include/qi_keywords.hpp>
+
+[heading Expression Semantics]
+
+[table
+ [[Expression] [Semantics]]
+ [[`kwd(k1)[a] / kwd(k2)[b]`] [Match `lit(k1) > a` or `lit(k2) > b`, equivalent to `lit(k1) > a | lit(k2) > b`]]
+]
+
+[heading Attributes]
+
+
+[table
+ [[Expression] [Attribute]]
+ [[`kwd("k1")[a] / kwd("k2")[b]`]
+[``a: A, b: B --> (kwd(k1)[a] / kwd(k2)[b]): tuple<A, B>
+a: A, b: Unused --> (kwd(k1)[a] / kwd(k2)[b]): optional<A>
+a: Unused, b: B --> (kwd("k1")[a] / kwd(k2)[b]): optional<B>
+a: Unused, b: Unused --> (kwd(k1)[a] / kwd(k2)[b]): Unused
+
+a: A, b: A -->(kwd(k1)[a] / kwd(k2)[b]): tuple<A, A>``]]
+]
+
+[note The keyword list parser works tightly with the kwd and ikwd directives
+ and can't be used without it. A compile time error will warn you
+ of any mistakes. This parser collects all the kwd directives and
+ extracts the keyword literals from the directives to internaly
+ build a Ternary Search Tree (TST) to effectively parse the keywords.
+ Because you we can't mix character types inside a TST you must take
+ care not to mix wide strings with normal strings in the keyword you supply
+ to a keyword list. Should it happen the compiler will trap the mistake for you.]
+
+[note The kwd directive also works a bit like the repeat directive
+ and can be used to formulate additional contraints on the number of
+ times a keyword can occur while parsing a keyword list.]
+
+[note The kwd and ikwd directives can be mixed inside a keyword list. This has
+ however a small overhead and should be avoided when possible.]
+
+[heading Complexity]
+
+[:The overall complexity of the keyword list parser is defined by the
+sum of the complexities of its elements. The complexity of the
+keyword list itself is determined by the complexity of the internal TST contents :
+
+O(log n+k)
+
+Where k is the length of the string to be searched in a TST with n strings.]
+
+[heading Example]
+
+[import ../example/qi/keywords.cpp]
+
+[note The test harness for the example(s) below is presented in the
+__qi_basics_examples__ section.]
+
+Declare a small data structure representing a person:
+
+[reference_keyword_list_test_data_structure]
+
+Some using declarations:
+
+[reference_using_declarations_keyword_list]
+
+Now let's declare a keyword parser:
+
+[reference_keyword_list_no_constraint_rule]
+
+A couple of input string variations run on the same parser:
+
+[reference_keyword_list]
+
+Now let's delcare a parser with some occurence constraints:
+
+[reference_keyword_list_constraint_rule]
+
+And see how it works in these two cases:
+
+[reference_keyword_list_constraints]
+
+[endsect] [/ Keyword list]
Added: trunk/libs/spirit/repository/doc/qi/operators.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/spirit/repository/doc/qi/operators.qbk 2011-03-07 21:18:41 EST (Mon, 07 Mar 2011)
@@ -0,0 +1,11 @@
+[/==============================================================================
+ Copyright (C) 2001-2011 Joel de Guzman
+ Copyright (C) 2001-2011 Hartmut Kaiser
+
+ 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)
+===============================================================================/]
+
+[section:operators Qi Parser Operators]
+[include keywords.qbk]
+[endsect]
Modified: trunk/libs/spirit/test/qi/sequence.cpp
==============================================================================
--- trunk/libs/spirit/test/qi/sequence.cpp (original)
+++ trunk/libs/spirit/test/qi/sequence.cpp 2011-03-07 21:18:41 EST (Mon, 07 Mar 2011)
@@ -326,7 +326,7 @@
{ // compile check only
using boost::spirit::qi::rule;
typedef boost::fusion::vector<int, double> tuple_type;
- typedef std::vector<boost::fusion::vector<int, double> > attr_type;
+ typedef std::vector<tuple_type> attr_type;
rule<char const*, tuple_type()> r = int_ >> ',' >> double_;
rule<char const*, attr_type()> r2 = r >> *(',' >> r);
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk