Commit Graph

279 Commits

Author SHA1 Message Date
Nikita Kniazev
5c14304068 Qi.Examples: Remove a name clash in compiler tutorial [skip ci]
Needed to be able to build examples with multiple distinct toolsets
2019-02-27 17:23:03 +03:00
Nikita Kniazev
da91db5a9c The boost/detail/iterator.hpp header is obsolete
Both `iterator_traits` and `distance` in `boost::detail` namespace are just
aliases from `std` namespace.
2018-12-29 17:46:33 +03:00
Nikita Kniazev
54ca101440 Removed unneeded lexical_cast usages 2018-12-27 20:54:49 +03:00
Nikita Kniazev
e07ce69363 Removed unused lexical_cast includes 2018-12-27 19:36:51 +03:00
Nikita Kniazev
af4f22de40 Qi.Examples: min_xml: Parsing error message tweak 2018-11-22 15:40:23 +03:00
Nikita Kniazev
b08a6ddbc5 Qi.Examples: min_xml: Fixed past the end iterator increment 2018-11-22 15:39:48 +03:00
Nikita Kniazev
ce7be3a2f9 Qi.Examples: min_xml: Fixed inconsistency with docs
https://svn.boost.org/trac10/ticket/12860
2018-11-22 15:38:08 +03:00
Joel de Guzman
ade886de46 typo fix
[SVN r77225]
2018-09-30 02:08:06 +03:00
Nikita Kniazev
b3ae790e2b Use endian macros from Predef
The `boost/detail/endian.hpp` header is deprecated.
2018-09-15 18:19:49 +03:00
Nikita Kniazev
02c3c30077 ts_real_policies: Parse directly into output parameter
There is no need to initialize accumulator with zero value before the first
call to `parse`, and to use a temporary.
2018-03-10 19:22:28 +03:00
Nikita Kniazev
dc9e23e9f5 ts_real_policies: Output parameter is of actual accumulator type 2018-03-10 19:12:28 +03:00
Nikita Kniazev
e472c0536f ts_real_policies: One iterator copy less optimization 2018-03-10 19:09:41 +03:00
Nikita Kniazev
1a72c27306 ts_real_policies: Fixed small numbers parsing
Numbers in range (-1000.0, 1000.0) has only one segment (no thousands delimiter),
and are parsed in `if` statement expression.
2018-03-10 19:06:11 +03:00
Nikita Kniazev
d526cd1931 Use <c++-template-depth> feature 2017-12-15 01:12:06 +03:00
Nikita Kniazev
d3cc71002c Fixed redundant semicolons 2017-11-21 19:49:37 +03:00
Nikita Kniazev
bd472f37c7 Qi.Examples: reference: Fixed lazy example
Phoenix expression used like it is a Qi expression.

I suspect it had been legal when they were belong to
the same Proto domain but not now.
2017-11-08 20:10:28 +03:00
Nikita Kniazev
9128cd2535 Qi.Examples: expect: Do not use c++11 for loop 2017-11-07 21:10:18 +03:00
Nikita Kniazev
beb28c417d Qi.Examples: Fixed parse_frac_n in reference.cpp
Error message:

```
qi/reference.cpp:126:5: note: candidate function template not viable: requires 3 arguments, but 4 were provided
    parse_frac_n(Iterator& first, Iterator const& last, Attribute& attr)
```

The issue had been introduced in 6832dc2298
where `parse_frac_n` signature was changed.
2017-10-30 02:14:46 +03:00
Nikita Kniazev
12549b559c Qi.Examples: Fixed missing using statement for expect directive
Error message:
> qi/reference.cpp:1047:31: error: ‘expect’ was not declared in this scope
>              test_parser("xi", expect[char_('o')]); // should throw an exception

Introduced with PR #196 (commit d494fe189b)
2016-08-16 19:16:24 +03:00
mxc-commons
88f494cb0d Fixes for PR #196 expect directive
This PR contains fixes for both issues reported by Lastique and
MarcelRaad. It makes PR #197 obsolete.

Removed obsolete dependency  of test/qi/expectd.cpp on
mxc/qitoo/qitoo.hpp. Was reintroduced by mistake.

Created qi/detail/expectation_failure.hpp. It defines the
expectation_failure template as a common dependency of expect directive
and expect operator. Removed expectation_failure from
operator/expect.hpp.

Changed version.hpp to 2.54. I did not notice that addl file in the
first place.
2016-07-19 16:42:03 +02:00
mxc-commons
0d3dc69ca5 Changed type aliases to typedefs for C++03 compatibility 2016-07-15 02:14:44 +02:00
mxc-commons
4251626a8f Output formatting corrected 2016-07-12 04:00:08 +02:00
mxc-commons
d494fe189b Expect directive, ready for PR
As discussed with Joel de Guzman this PR introduces the expect directive
expect[] to spirit qi 2. PR includes code, test, example, and
documentation.

See
https://sourceforge.net/p/spirit/mailman/spirit-general/thread/nln5d3%24klg%241%40ger.gmane.org/#msg35208052

Here is what I did:

1. Added expect.hpp to home/qi/directives.
1a. Added forwarding header qi_expectd.hpp to include dir.
2. Renamed expectation parser (a > b) struct from expect to
expect_operator
to prevent name conflicts (expect directive uses struct
expect_directive).
3. Added expect directive to the common terminals
(common_terminals.hpp).
4. Added expectd.cpp to the test suite.
5. Added expectd.cpp to the examples.
6. Added expect directive documentation to directive.qbk. Crosslinked
expectation operator and expect directive docs.
7. Added expect directive to the index.idx file for index-generation.
8. Added expect directive to the qi quick_reference.qbk.
9. Added expect directive to the spirit reference card (tex, pdf)
10. Created a new section in the whats_new.hpp.
11. Changed spirit version to 2.5.4. Spirit index.html showed 2.5.2
allthough an 2.5.3 What's New section already existed. Fixed.
2016-07-12 02:49:07 +02:00
mxc-commons
947189bc75 spirit 2 expect directive
Initial commit.
2016-07-07 00:50:44 +02:00
mxc-commons
aed96ba915 spirit 2 expect directive
Initial commit.
2016-07-07 00:49:18 +02:00
Mario Lang
20ecf739f0 Fix some typos in docs and comments. 2015-06-24 20:45:54 +02:00
Joel de Guzman
0a8fc4c147 removing outdated json lib 2015-04-16 21:52:04 +08:00
Mateusz Łoskot
0d4d2c1f6c Improve QString integration in custom_string.cpp
Improve QString integration in custom_string.cpp
There is an example of how to use Qi with Qt's QString as a custom string.
This is very helpful but it doesn't work in conjunction with the debug facilities.
The following patch fixes this by adding a couple of template specialisations.

Patch originally submitted as https://svn.boost.org/trac/boost/ticket/8846
2014-12-15 11:53:13 +01:00
Joel de Guzman
cb880cf323 ported qi calc2; now using lambda functions 2014-06-06 12:33:57 +08:00
Joel de Guzman
e85cf3da3f fixed long standing operator precendence bug 2014-05-28 15:45:26 +08:00
Beman Dawes
06ee52a23c Add Boost.Build support for the Git modular layout, using links to to new header locations, thus preventing breakage to vast amounts of user code and build setups. Being added to SVN so that changes will automatically propagate to Git and modular Boost. Thanks to Steven Watanabe, Jürgen Hunold, Vladimir Prus, and Bjørn Roald for developing this patch. Steven in particular conceived the approach and did the initial implementation, which was further refined by the other contributors.
[SVN r86392]
2013-10-22 15:23:42 +00:00
Vladimir Prus
eac0534b8b Undo previous commit, it was meant for another branch
[SVN r85888]
2013-09-25 08:32:03 +00:00
Vladimir Prus
0cc6fc4033 Initial modular patch, from Bjorn.
[SVN r85884]
2013-09-25 08:13:57 +00:00
Hartmut Kaiser
c8c65757c6 Spirit: fixing inspect errors
[SVN r82191]
2012-12-23 20:02:12 +00:00
Hartmut Kaiser
4e804bf318 Spirit: Fixing inspect problems
[SVN r81794]
2012-12-08 15:51:22 +00:00
Marshall Clow
53d3501521 Removed usage of deprecated macros in Boost.Fusion and Boost.Spirit
[SVN r81569]
2012-11-26 18:44:46 +00:00
Joel de Guzman
d26b161c1a Patch from Michele Bertasi fixing segmentation fault bug
[SVN r81092]
2012-10-29 02:05:14 +00:00
Joel de Guzman
37aa3e9652 readding proper file structure
[SVN r81004]
2012-10-17 05:07:54 +00:00
Joel de Guzman
008cc318da added test case
[SVN r81003]
2012-10-17 04:02:03 +00:00
Joel de Guzman
b26acbae0a added json parser contributed by Michael Caisse
[SVN r81002]
2012-10-17 03:57:41 +00:00
Joel de Guzman
b4e5268e1a fix for identifier rule not allowing identifiers that start with a keyword (e.g. fortify)
[SVN r77966]
2012-04-14 00:00:03 +00:00
Joel de Guzman
cf280b5d21 Support for BOOST_SPIRIT_AUTO and qi::copy.
[SVN r76929]
2012-02-07 06:13:50 +00:00
Joel de Guzman
f73cbb273d adding the target location in the project requirements to generate the exe in the same directory.
[SVN r74324]
2011-09-09 01:25:33 +00:00
Joel de Guzman
de7178d3aa Better Jamfile
[SVN r74311]
2011-09-08 15:59:19 +00:00
Joel de Guzman
b4ed5856b2 - using LLVM 2.9 release
- added bjam for msvc

[SVN r74310]
2011-09-08 09:16:49 +00:00
Joel de Guzman
dab14454d1 Trivial tweaks
[SVN r73979]
2011-08-21 10:19:38 +00:00
Joel de Guzman
518df49fd9 Simple tweaks
[SVN r73641]
2011-08-10 19:04:03 +00:00
Joel de Guzman
77b9262c6a refactoring: moving low-level llvm stuff into separate classes
[SVN r73622]
2011-08-09 15:07:52 +00:00
Joel de Guzman
eeccb6b2d3 refactoring: moving low-level llvm stuff into separate classes
[SVN r73621]
2011-08-09 14:39:03 +00:00
Joel de Guzman
7cf3b31e7f refactoring: moving low-level llvm stuff into separate classes
[SVN r73619]
2011-08-09 08:29:45 +00:00