Commit Graph

787 Commits

Author SHA1 Message Date
Joel de Guzman
af6c6482d5 porting bug fix 2014-06-07 00:11:12 +08:00
Joel de Guzman
97ddf141e3 - Added calc 9 (ported from Qi calc 8).
- Fixed is_substitute for variants
- Fixed variant_find_substitute when Attribute and Variant is the same type
2014-06-06 23:35:09 +08:00
Joel de Guzman
cb880cf323 ported qi calc2; now using lambda functions 2014-06-06 12:33:57 +08:00
Joel de Guzman
8ee51a61c8 ported qi calc1 2014-06-06 12:20:44 +08:00
Joel de Guzman
97ca172485 preparing for calc9 2014-06-06 12:10:27 +08:00
Joel de Guzman
3ac97a6e33 Merge branch 'develop' 2014-05-28 16:08:58 +08:00
Joel de Guzman
e85cf3da3f fixed long standing operator precendence bug 2014-05-28 15:45:26 +08:00
Joel de Guzman
c21c79f9f4 Some cleanup 2014-05-26 23:28:51 +08:00
Joel de Guzman
fb2ab52da1 merging position_cache with error_handler 2014-05-26 20:00:45 +08:00
Joel de Guzman
faebc75274 compiler error handling looking good 2014-05-26 19:32:56 +08:00
Joel de Guzman
528c1de366 made on_success mechanism as a member of the rule ID 2014-05-26 13:06:58 +08:00
Joel de Guzman
168e202365 making the rule ID more useful by making it a class where you define on_error (and later on_success) hooks. 2014-05-26 12:38:30 +08:00
Joel de Guzman
dd352e4b60 ported all grammars to the new syntax 2014-05-26 09:07:15 +08:00
Joel de Guzman
b20c23d134 adjust the examples to reflect API changes 2014-05-26 07:38:02 +08:00
Joel de Guzman
275b0bcb34 some cleanup 2014-05-24 17:29:09 +08:00
Joel de Guzman
683ed7df49 improved exception handling API: on_error(first, last, x, context) 2014-05-24 16:45:46 +08:00
Joel de Guzman
41b5b4b1a6 implemented clang-style error handling 2014-05-24 16:32:23 +08:00
Joel de Guzman
8ca164044c - added lambda_visitor
- added annotation of ASTs
2014-05-19 11:53:25 +08:00
Joel de Guzman
caf19f5c7c passing position_cache as context to our parser (for error handling) 2014-05-19 10:34:16 +08:00
Joel de Guzman
0a32d104db incremental port again 2014-05-19 02:46:48 +08:00
Joel de Guzman
92b4f69c74 another incremental port of qi::calc7 2014-05-18 07:27:29 +08:00
Joel de Guzman
97a3004e95 improved expression api 2014-05-17 19:21:42 +08:00
Joel de Guzman
252e712524 porting qi/calc7 to x3 calc8 2014-05-17 19:13:56 +08:00
Joel de Guzman
a73c91d14d more cleanup 2014-05-17 17:19:41 +08:00
Joel de Guzman
2610912397 added phrase_parse_context 2014-05-17 11:56:34 +08:00
Joel de Guzman
4fa3f73caa cleanup simplification 2014-05-17 11:25:04 +08:00
Joel de Guzman
24a11833cd fixed error handler 2014-05-17 10:53:31 +08:00
Joel de Guzman
fd99b74257 Implemented BOOST_SPIRIT_DECLARE and BOOST_SPIRIT_DECLARE 2014-05-17 10:46:07 +08:00
Joel de Guzman
12ee452e27 - allow simple local rules
- inject the rule tag into the context ONLY IF there's no BOOST_DEFINE for that rule.
2014-05-17 08:24:52 +08:00
Joel de Guzman
1966f55985 working with the monster 2014-05-16 13:34:25 +08:00
Joel de Guzman
927dea5eb1 implementing BOOST_SPIRIT_DEFINE 2014-05-16 07:22:18 +08:00
Joel de Guzman
1b95f8ee78 more simplifications. 2014-05-03 05:43:50 +08:00
Joel de Guzman
0f972edcfa some cleanup. we'll probably keep this simply as-is (same as calc6, but modular) 2014-05-02 22:42:46 +08:00
Joel de Guzman
c9f4ec675b based on calc6 with any_parser 2014-05-02 19:33:07 +08:00
Joel de Guzman
0a4f187bc2 restarting based on calc6 2014-05-02 18:36:46 +08:00
Joel de Guzman
a129355f3e implemented raw directive 2014-05-02 10:53:16 +08:00
Joel de Guzman
f9e3f874cc porting calc7 to x3 2014-05-02 08:58:53 +08:00
Joel de Guzman
f7a3280fe6 added ast utilities 2014-05-01 16:13:15 +08:00
Joel de Guzman
3da43905a9 better x3::variant interface 2014-05-01 11:52:18 +08:00
K-ballo
955fa54406 Added type-erased parser, tests and examples 2014-04-22 12:47:04 -03:00
Ruslan Baratov
bbe67a21c3 Fix some misprints in docs and code comments. 2014-04-11 16:27:54 +04:00
Joel de Guzman
16c345b44e ported calc6 to x3 2014-04-09 23:06:09 +08:00
Joel de Guzman
0b736c5e4c date changes 2014-04-09 22:40:45 +08:00
Joel de Guzman
08a133e849 variant should be named variant. nothing else. 2014-04-09 22:25:43 +08:00
Joel de Guzman
a97fb7faf6 improved variant interface 2014-04-09 22:16:20 +08:00
Joel de Guzman
c265c80da8 added x3::ast and x3::forward_ast (specialized versions of boost::variant and boost::recursive_wrapper) 2014-04-09 15:17:02 +08:00
Joel de Guzman
f88d50853c use enum class for error_handler_result 2014-04-09 11:54:09 +08:00
Joel de Guzman
c0c07026dc Ported calc5 to X3 (Same as Calc4, this time, we'll incorporate debugging support, plus error handling and reporting). 2014-04-09 08:34:57 +08:00
Joel de Guzman
8a35332835 Merging Spirit x3 into devel 2014-03-18 11:06:19 +08:00
Joel de Guzman
5767624292 preparing for migration to boost devel 2014-03-18 10:53:30 +08:00
Joel de Guzman
fc6be25a8c Removing (broken) scheme example.
[SVN r81058]
2014-01-22 21:42: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
Ben Hanson
259365d671 lexertl supports " like flex.
[SVN r78354]
2012-05-06 14:34:15 +00:00
Ben Hanson
5b46da6219 lexertl supports " like flex.
[SVN r78353]
2012-05-06 14:32:18 +00:00
Ben Hanson
d41008666c Changed '*' to '+', as per lex example in the comment.
[SVN r78352]
2012-05-06 14:28:42 +00:00
Ben Hanson
74f95ca0ab Changed '*' to '+', as per lex example in the comment.
[SVN r78351]
2012-05-06 14:27:03 +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
Hartmut Kaiser
cd3b9a325c Spirit: Fixing lexer example
[SVN r73620]
2011-08-09 13:14:55 +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
Joel de Guzman
861f9aa29c refactoring: moving low-level llvm stuff into separate classes
[SVN r73618]
2011-08-09 03:35:05 +00:00
Joel de Guzman
f4db273a73 refactoring: moving low-level llvm stuff into separate classes
[SVN r73617]
2011-08-09 01:53:00 +00:00
Joel de Guzman
159df190fb fun tweaks
[SVN r73604]
2011-08-08 00:22:41 +00:00
Joel de Guzman
09cbc28274 error report on prefix++/-- when an lvalue is not found
[SVN r73597]
2011-08-07 15:15:56 +00:00
Joel de Guzman
665aef0591 Fixed grammar for unary expressions
[SVN r73591]
2011-08-07 06:19:50 +00:00
Joel de Guzman
6903c36713 samples update
[SVN r73590]
2011-08-07 05:39:38 +00:00
Joel de Guzman
e3b64340e2 make operand an extended_variant so we can tag it (among other things).
[SVN r73588]
2011-08-07 00:39:40 +00:00
Hartmut Kaiser
201007c533 Spirit: fixing compilation problems
[SVN r73578]
2011-08-06 18:33:40 +00:00
Joel de Guzman
eb23674ff1 more tweaks
[SVN r73577]
2011-08-06 16:42:29 +00:00
Joel de Guzman
b1906de0ab Better llvm abstraction
[SVN r73576]
2011-08-06 16:31:43 +00:00
Joel de Guzman
cd59873c6a more tweaks
[SVN r73575]
2011-08-06 15:27:48 +00:00
Joel de Guzman
fc3a6fb02a Now pre++ and pre-- works. lvalue handling works.
[SVN r73574]
2011-08-06 15:11:52 +00:00
Joel de Guzman
e50539e7cb refactoring the compiler
[SVN r73573]
2011-08-06 14:55:21 +00:00
Joel de Guzman
da59539948 refactoring the compiler
[SVN r73570]
2011-08-06 12:05:23 +00:00
Joel de Guzman
95bb775cac misc updates
[SVN r73568]
2011-08-06 09:17:59 +00:00
Joel de Guzman
badbe1c329 unary ops + tests
[SVN r73567]
2011-08-06 04:27:35 +00:00
Joel de Guzman
1c058a6ff4 More binary operators
[SVN r73566]
2011-08-06 03:38:28 +00:00
Joel de Guzman
48d7a9fd33 conjure3 assign-ops + bug fixes for all
[SVN r73565]
2011-08-06 03:14:47 +00:00
Joel de Guzman
9bc311f33a Better token addition syntax
[SVN r73560]
2011-08-06 01:24:06 +00:00
Joel de Guzman
76b3e03d11 Moved extended_variant into its own file(s)
[SVN r73559]
2011-08-06 01:05:40 +00:00
Joel de Guzman
74f28d0699 Updates. Preparation for supporting more operators (starting with assignment operators).
[SVN r73557]
2011-08-06 00:57:10 +00:00
Joel de Guzman
82e652ae5e expression assignments working
[SVN r73456]
2011-07-31 01:05:52 +00:00
Joel de Guzman
71a59946df made assignment an expression as in C/C++. Back-end is unstable (WIP).
[SVN r73455]
2011-07-31 00:57:18 +00:00
Hartmut Kaiser
a63e389588 Spirit: Fixed bad token ids in conjure examples
[SVN r73452]
2011-07-30 19:33:09 +00:00
Joel de Guzman
138d52af26 separate processing of assign and binary ops
[SVN r73442]
2011-07-30 13:57:06 +00:00
Joel de Guzman
4d3a7c395e updated debug support
[SVN r73441]
2011-07-30 13:56:23 +00:00
Joel de Guzman
370da35bd4 updated debug support
[SVN r73440]
2011-07-30 13:55:11 +00:00
Hartmut Kaiser
dac12b14be Spirit: Fixing ambiguity of name 'token' in the lexer definition (as reported by gcc)
[SVN r73412]
2011-07-28 15:45:15 +00:00
Joel de Guzman
3fdae2814a Literals
[SVN r73376]
2011-07-26 13:34:51 +00:00
Hartmut Kaiser
835350e39b Spirit: typo fix in comments
[SVN r73368]
2011-07-26 01:12:47 +00:00
Hartmut Kaiser
ad64f73e80 Spirit: Fixing wrong error position reported by lexer based conjure examples
[SVN r73367]
2011-07-26 01:11:11 +00:00
Joel de Guzman
4e41c1709d minor tweak
[SVN r73366]
2011-07-26 00:42:21 +00:00
Joel de Guzman
00f9d0ce89 tweaks to make it similar to conjure's example
[SVN r73355]
2011-07-25 09:48:45 +00:00
Joel de Guzman
c895d307e6 Tweaks (separated precedence again)
[SVN r73343]
2011-07-24 23:47:43 +00:00
Joel de Guzman
b57ece4597 improved enumerations and constants
[SVN r73330]
2011-07-24 16:08:45 +00:00
Joel de Guzman
4bbee95961 LLVM backend!
[SVN r73206]
2011-07-18 04:06:05 +00:00
Hartmut Kaiser
70f3203017 Spirit: comment fixes
[SVN r73133]
2011-07-16 02:10:59 +00:00
Hartmut Kaiser
55f4d1564b Spirit: simplified token-id interface for lexer
[SVN r73132]
2011-07-16 01:55:47 +00:00
Joel de Guzman
27278842a0 Removing extra prints
[SVN r73116]
2011-07-15 02:51:18 +00:00
Joel de Guzman
8dcbebc53d fixed ID annotation
[SVN r73115]
2011-07-15 00:38:20 +00:00
Bryce Adelstein-Lelbach
e907da7086 Remove second and unreachable return statement.
[SVN r72561]
2011-06-12 21:05:30 +00:00
Joel de Guzman
235670ce4a fixed odd g++ behavior
[SVN r72469]
2011-06-07 16:02:35 +00:00
Joel de Guzman
add30b78c8 fixed odd g++ behavior
[SVN r72467]
2011-06-07 15:49:22 +00:00
Hartmut Kaiser
12d65ba219 Spirit: more comments
[SVN r72466]
2011-06-07 12:51:00 +00:00
Joel de Guzman
d8fadf06ea Renaming conjure_lexer into conjure2
[SVN r72465]
2011-06-07 05:05:53 +00:00
Joel de Guzman
0a2d34d5d5 fixed bad code using (...)
[SVN r72430]
2011-06-06 02:48:23 +00:00
Hartmut Kaiser
46fe0ee598 Spirit: minor fixes to conjure_lexer
[SVN r72429]
2011-06-06 02:01:43 +00:00
Hartmut Kaiser
f58f5ea557 Spirit: adding conjure_lexer example, fixing a couple of lexer bugs
[SVN r72410]
2011-06-05 15:10:11 +00:00
Joel de Guzman
a9668e848e provided printing for nil
[SVN r71866]
2011-05-11 01:02:46 +00:00
Joel de Guzman
8e3ef5fe7e Minor tweaks
[SVN r71399]
2011-04-21 05:13:30 +00:00
Hartmut Kaiser
575df4e144 Spirit: fixing more problems with using adapted ADTs in Kamra
[SVN r71305]
2011-04-16 02:10:11 +00:00
Hartmut Kaiser
a26c58c4ef Spirit: fixing/adding examples
[SVN r71269]
2011-04-15 11:19:43 +00:00
Hartmut Kaiser
ee1c4791b6 Spirit: fixing the unescaped_string example
[SVN r71202]
2011-04-12 14:52:14 +00:00
Joel de Guzman
8b5acda525 Fix for MSVC 10
[SVN r71196]
2011-04-12 00:32:59 +00:00
Joel de Guzman
16fc0961c4 - fixed mini_c precedence
- prelude to adding more operators in conjure

[SVN r69814]
2011-03-10 01:18:58 +00:00
Joel de Guzman
f1b0bf99ce The conjure PL
[SVN r69774]
2011-03-09 16:41:47 +00:00
Joel de Guzman
bdb20d750f The conjure PL
[SVN r69773]
2011-03-09 16:35:57 +00:00
Joel de Guzman
7af69cd607 Removing old calculators
[SVN r69675]
2011-03-08 02:36:48 +00:00
Joel de Guzman
07ef3ead0e moving mini_c samples
[SVN r69673]
2011-03-08 02:33:41 +00:00
Joel de Guzman
7938177f27 Quick tweaks
[SVN r69623]
2011-03-07 10:27:49 +00:00
Joel de Guzman
c7d60b8b00 mini_c + updates
[SVN r69618]
2011-03-07 07:02:19 +00:00
Joel de Guzman
a3a9eaa9e6 calc8
[SVN r69444]
2011-03-01 17:26:06 +00:00
Joel de Guzman
3bcae0d356 silenced the pesky msvc warning
[SVN r69433]
2011-03-01 07:00:31 +00:00
Joel de Guzman
1666974821 small error reporting tweaks
[SVN r69432]
2011-03-01 04:13:10 +00:00
Joel de Guzman
5ed7b1932b added assembler printing
[SVN r69429]
2011-03-01 03:06:33 +00:00
Joel de Guzman
3c4922c464 Better error handling and reporting.
[SVN r69380]
2011-02-28 11:57:37 +00:00
Joel de Guzman
1b038c35b0 Minor tweaks
[SVN r69379]
2011-02-28 10:15:00 +00:00
Joel de Guzman
c0c28a05e9 Better error handling
[SVN r69378]
2011-02-28 06:06:50 +00:00
Joel de Guzman
1267e26fe3 almost working
[SVN r69337]
2011-02-27 16:30:51 +00:00
Joel de Guzman
f21410dcfe statement grammar plus various updates
[SVN r69323]
2011-02-27 11:58:18 +00:00
Joel de Guzman
660609d2ec calc7 updates: tagging the AST
[SVN r69298]
2011-02-26 09:54:14 +00:00
Joel de Guzman
71fca7b45e updates
[SVN r69297]
2011-02-26 08:35:11 +00:00
Joel de Guzman
68fb071c02 more updates
[SVN r69233]
2011-02-24 06:31:06 +00:00
Joel de Guzman
5ac9739feb More updates
[SVN r69204]
2011-02-23 10:54:02 +00:00