Commit graph

19 commits

Author SHA1 Message Date
Andrew Garrett 8f9f814784 Revert to r39167. This is the last version I can find which compiles correctly. 2009-01-17 01:25:31 +00:00
River Tarnell 5e073fa2be move include files to include/ 2008-08-13 17:40:09 +00:00
River Tarnell dac72d2d9a - untemplatise parser and ast, force Unicode (UChar32) only
- set an svn:ignore
2008-08-12 14:02:33 +00:00
River Tarnell 4f6c4d886e - parser: support singular for time units as well as plural
- visitors: remove commented code
2008-08-12 12:17:56 +00:00
River Tarnell d4d3f27224 rewrote most of visitors.h, and split functors into functors.h. this implementation uses a metaprogram to determine valid operators at compile time, instead of requiring every exception to be specified seperately. 2008-08-12 12:11:31 +00:00
River Tarnell 4a4e3166cd initial support for dates and intervals 2008-08-11 22:09:34 +00:00
River Tarnell 41afd40801 change from double/float to GMP arbitrary precision types. as well as increased range, this means '1.3 + 20' no longer evaluates to '21.300000000000001' 2008-08-11 01:01:05 +00:00
River Tarnell aa982fce43 - using leaf_node_t includes the skip parser in the parsed token, causing expressions like (1 == ONE) to fail. use reduced_node_t instead
- add regression test framework and some basic tests
2008-08-10 20:38:52 +00:00
River Tarnell dc744d0299 trailing whitespace on expr should not be an error 2008-08-10 16:12:33 +00:00
River Tarnell 081b3524db add README. note that Boost < 1.35 won't work.
fix xml tool.
2008-08-10 16:02:35 +00:00
River Tarnell 63c4ef9830 cleanups 2008-08-10 15:36:48 +00:00
River Tarnell 10e89fda5c improved string literal parser. now \xHH works as expected (only matches two digits), and \uHHHH, \UHHHHHHHH are supported (16/32-bit Unicode characters) 2008-08-10 12:53:21 +00:00
River Tarnell 6ad335fbe9 cleanup: move ast_evaluator into its own module, move expr functions from parser to affunctions 2008-08-10 04:21:28 +00:00
River Tarnell bbf1737cc2 - convert parser to AST. while this is slower than the previous implementation, it's clearer, and more correct (lazy evaluation is supported)
- to compensate for the slower parser, optimised it a little
- change basic_string to fray, a refcounted immutable string
- add 'xml' tool, prints the parser tree in XML
2008-08-10 03:52:17 +00:00
River Tarnell 5037acbd0d Unicode conversion: full Unicode support for parser, and 'expr' tool
add UTF-8/UTF-32 conversion functions for input/output
2008-08-09 16:18:04 +00:00
River Tarnell df6341487c Unicode conversion, phase 2: parser should be templated on char type 2008-08-09 14:34:17 +00:00
River Tarnell 305efb0961 - implement 'rlike' and 'regex' operators
- copyright header for all files
2008-08-08 12:35:13 +00:00
River Tarnell ff2465007f - remove unused isInVector
- move AFP stuff into its own namespace
- move utf8 and equivset into seperate modules
- parser should understand /* */ comments
2008-08-08 03:23:34 +00:00
River Tarnell 1912d62d09 - rewrote AFPData to use boost::variant (type safe, no manual memory management)
- rewrote parser to use boost.spirit instead of a hand-written parser
- refactored request loading into 'request' object
- added 'expr', a command-line tool to test the new parser
- some performance fixes for affunctions
2008-08-08 00:01:22 +00:00