1
Fork 0
Commit graph

168 commits

Author SHA1 Message Date
Jake Wheat 0d1e345262 work on from clause, group by and having tests in 2011 2014-04-20 22:10:55 +03:00
Jake Wheat be79448414 update the reserved keywords to 2011 list 2014-04-20 19:38:43 +03:00
Jake Wheat 9b2ba2fb36 remove ref typename for consistency
support t and p multipliers in lob lengths
update a few tests
2014-04-20 19:24:03 +03:00
Jake Wheat c50b3e7839 move across most tests from sql2003 to sql2011 plus add a few 2014-04-20 17:03:32 +03:00
Jake Wheat ccd0e6708f start new file for the sql 2011 tests based on the grammar from the draft standard 2014-04-20 16:13:14 +03:00
Jake Wheat d69f1752a5 start working on new sql 2011 tests 2014-04-19 22:24:10 +03:00
Jake Wheat 7a7f4ba7aa work around for haddock refusal to parse literal comment lines with *
in first character position
get rid of code_units since these are not in sql2011
implement next value for
parse the nullary functions with reserved names
updates to the sql2003 file
2014-04-19 21:17:19 +03:00
Jake Wheat 7057241974 add filter and within group aggregates 2014-04-19 18:01:49 +03:00
Jake Wheat 59826ecce2 more docs in Parser.lhs 2014-04-19 15:10:45 +03:00
Jake Wheat ddfac442ab rename some functions in parser 2014-04-19 13:22:11 +03:00
Jake Wheat 445c10a01d rearrange part of the parser file 2014-04-19 13:10:46 +03:00
Jake Wheat fdb90c0440 change collate and in chartype to be a list of names
rearrange and add notes to the parser
2014-04-19 12:47:25 +03:00
Jake Wheat 4fa21ceea8 get rid of the string overloads in the tests 2014-04-19 11:45:45 +03:00
Jake Wheat fea6e347bd change joins so natural is represented by separate field to on/using
some fixes and tweaks to the reserved keyword handling, especially in
  the typename parser
2014-04-19 11:18:29 +03:00
Jake Wheat 5d9a32a91d reserve most of the reserved keywords in the parser 2014-04-19 00:18:15 +03:00
Jake Wheat 6b5a29c052 update docs 2014-04-18 23:51:05 +03:00
Jake Wheat 7a84704516 implement reference type name (I think - cannot find any examples or
explanation of what it means, didn't try reading the standard
  itself, just the grammar)
2014-04-18 21:48:14 +03:00
Jake Wheat 3b86a06e5c implement complete interval literals 2014-04-18 21:38:24 +03:00
Jake Wheat f64632bbac support two double quotes in quoted identifier plus unicode quoted identifier syntax 2014-04-18 21:09:46 +03:00
Jake Wheat 4e1a1da820 basic multiset support 2014-04-18 20:50:24 +03:00
Jake Wheat 2ff8580dbf complete basic typename support 2014-04-18 19:49:00 +03:00
Jake Wheat fbdcacc604 modify basic typenames to support dotted names in the syntax
add syntax for most of the other kinds of typenames
add pretty printing for these
todo: the parsing and the tests
2014-04-18 17:55:56 +03:00
Jake Wheat 438e3383e4 fix/work around issues with the keywords parsing
fix the infix and postfix keywords parsing
minor refactoring
2014-04-18 17:51:57 +03:00
Jake Wheat b0f1e044b4 refactor some of the multi keyword/ multiword typename parsing 2014-04-18 14:50:54 +03:00
Jake Wheat 247c7a26b7 improve error messages 2014-04-18 12:28:05 +03:00
Jake Wheat 2cad424379 change the names in the ast to be lists so can support qualified names
everywhere:
  TRSimple: replaces the TRQualified
  Iden
  App name
  AggregateApp name
  WindowApp name
  operator names (not sure if this is used in ansi sql)
  explicit table
  function in from clause
2014-04-18 11:43:37 +03:00
Jake Wheat 3df87a3cf9 change set quantifier and sort direction to represent default separately 2014-04-18 11:18:21 +03:00
Jake Wheat c814cc9437 tweak to error message for reserved keyword as identifier
add in some group by and order by tests
2014-04-18 10:47:39 +03:00
Jake Wheat 2e44b7b968 update changelog 2014-04-18 00:36:50 +03:00
Jake Wheat 37dca6596b support character set literals, e.g. N'stuff'
support collate postfix operator
support escape and uescape as postfix operators
change the collate support in substring and trim which isn't a special
  case in the sql 2003 grammar anymore but just a normal collate postfix
  operator, the old code had the collation name as a string, but the
  new style is as an identifier
2014-04-18 00:16:24 +03:00
Jake Wheat 211174cfb4 work on array constructors and expressions 2014-04-17 22:57:33 +03:00
Jake Wheat 4cf84eba7b reenable commented test for quantified comparison predicates 2014-04-17 22:46:21 +03:00
Jake Wheat d38a5a743a move the typed literal parser around
implement unique predicate, match predicate
change the representation of quantified comparison predicates
2014-04-17 22:35:43 +03:00
Jake Wheat 0d3f552ede move typed lit 2014-04-17 21:42:07 +03:00
Jake Wheat 490c84b7f1 split typed literal parser from cast parser 2014-04-17 21:27:54 +03:00
Jake Wheat df1f948b5d left factor identifier and app parsers 2014-04-17 21:05:47 +03:00
Jake Wheat a296b1ec31 left factor terms which start with parens (scalar subquery, paren value expr/row ctors) 2014-04-17 20:59:46 +03:00
Jake Wheat d202458808 refactor the interval literal parser to not use try 2014-04-17 20:53:16 +03:00
Jake Wheat 556f65ee22 refactor the join parsing to left factor and remove try
refactor the string token parser to reduce use of try
2014-04-17 20:46:16 +03:00
Jake Wheat 6720d3e3a3 add support for named host parameters 2014-04-17 19:27:18 +03:00
Jake Wheat 19df6f18aa don't include unfinished tests in the test suite
fix number literals to accept upper case E
implement multi part string literals
fix tests for string literals, typed literals, boolean literals and
  number literals in the sql 2003 tests
2014-04-17 19:19:41 +03:00
Jake Wheat 488310ff6a add some big improvements to parse error messages
change the parser to not attempt to parse the elements following
'from' unless there is a actual 'from'
improve the symbol parser to try to deal with issues when symbols are
  next to eachother with no intervening whitespaces
improve number literal parsing to fail if there are trailing letters
  or digits which aren't part of the number and aren't separated with
  whitespace
add some code to start analysing the quality of parse error messages
2014-04-17 18:32:41 +03:00
Jake Wheat c48b057457 better sql 2003 todo list 2014-04-16 22:37:18 +03:00
Jake Wheat e40ea1ad52 update changelog 2014-04-16 20:38:19 +03:00
Jake Wheat dffd7b0d7a refactor more of the parser to update with ideas from the tutorial
parser
remove a huge number of 'try' calls in the parser
rename some of the parser functions which used prefix s to nicer names
2014-04-16 20:22:42 +03:00
Jake Wheat 89015144f9 change the ints in the syntax to be integers
partially add buildExprParser hack to deal with some nested prefix and
  postfix unary operators
add new file which starts going through the sql2003 grammar to try to
  create lots of examples for comprehensive testing of sql2003
  support.
replace the lexers with lexers from the tutorial project
2014-04-16 18:58:17 +03:00
Jake Wheat 8b1fa81de7 fix bug in parsing default as all instead of distinct for set operations 2014-04-15 13:47:34 +03:00
Jake Wheat 4989f5251b add Data and Typeable to the syntax 2014-04-10 18:53:11 +03:00
Jake Wheat da27d3147f commit hash for 0.3.1 2014-04-10 12:14:08 +03:00
Jake Wheat 79fde02d81 fix default for distinct/all in union in the pretty printer 2014-04-09 18:31:14 +03:00