1
Fork 0
Commit graph

60 commits

Author SHA1 Message Date
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 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 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 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 6720d3e3a3 add support for named host parameters 2014-04-17 19:27:18 +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 4989f5251b add Data and Typeable to the syntax 2014-04-10 18:53:11 +03:00
Sönke Hahn 2e91fb9e81 Allow qualified names ('schema.table') in from clauses 2014-01-22 15:54:14 +08:00
Jake Wheat 7cf5275615 swap order in select lists so the expression comes first then the alias to match the order in the concrete syntax 2013-12-31 11:31:00 +02:00
Jake Wheat 40c64c7631 rename qeFetch to qeFetchFirst 2013-12-19 17:50:25 +02:00
Jake Wheat 692f8f84ad fixes to haddock and update changelog 2013-12-19 12:15:05 +02:00
Jake Wheat 3b2730fd99 rename ScalarExpr -> ValueExpr which is slightly more standard, add notes on new fixity implementation 2013-12-19 11:46:51 +02:00
Jake Wheat b68c116839 add support for ? for parameterized queries 2013-12-19 10:44:20 +02:00
Jake Wheat 1be27eca58 rename Duplicates -> SetQuantifier + qeDuplicates -> qeSetQuantifier 2013-12-19 10:34:32 +02:00
Jake Wheat b631497a04 renames OrderField->SortSpec, InThing->InPredValue 2013-12-18 16:27:06 +02:00
Jake Wheat b89f2a011c fixes for substring, change the abstract syntax for extract and
substring, and add the addition operators position, convert,
  translate, overlay and trim
2013-12-18 15:51:55 +02:00
Jake Wheat 02e8452f8c prepare for the github project name rename to be the same as the haskage package 2013-12-17 22:54:20 +02:00
Jake Wheat bcd06d1ef9 spelling fixes 2013-12-17 22:15:19 +02:00
Jake Wheat 60cf309953 fix haddock, hlint, rename Prec2TypeName to PrecScaleTypeName 2013-12-17 20:46:29 +02:00
Jake Wheat e61672ebf8 hlint 2013-12-17 20:27:11 +02:00
Jake Wheat 558d44140a add support for typenames with precision and scale 2013-12-17 19:52:14 +02:00
Jake Wheat b703e04af3 add syntax for new grouping expressions 2013-12-17 19:17:03 +02:00
Jake Wheat 7d094182b7 add support for multiple case when expressions 2013-12-17 18:42:00 +02:00
Jake Wheat ebe522b21d add support for nulls first/last 2013-12-17 18:28:31 +02:00
Jake Wheat e85ab8b831 add names/docs to some of the scalar expr constuctor fields, add partial support for explicit window frames 2013-12-17 17:29:49 +02:00
Jake Wheat b2728ec9bf add support for ansi standard offset and fetch syntax 2013-12-17 16:00:17 +02:00
Jake Wheat 8093498f2d generalize . to a binary operator 2013-12-17 15:21:43 +02:00
Jake Wheat 72b67166d9 add support for 'table t' syntax 2013-12-17 13:58:44 +02:00
Jake Wheat 4308acb982 add support for with recursive and column aliases in cte 2013-12-17 13:41:06 +02:00
Jake Wheat c52334943f add support for values 2013-12-17 13:27:16 +02:00
Jake Wheat 4330b3d7e0 add support for quoted identifiers 2013-12-17 13:21:36 +02:00
Jake Wheat 045f2be825 support simple interval literal interval '3 days' and rename CastOp to TypedLit 2013-12-17 12:51:14 +02:00
Jake Wheat 939189a04f partial support for lateral 2013-12-17 12:45:32 +02:00
Jake Wheat d49b3ddb99 add support for functions in tablerefs 2013-12-17 12:33:33 +02:00
Jake Wheat b6633bf73c reformat 2013-12-14 16:58:35 +02:00
Jake Wheat 730b8a7f0a get fixity adjustment working, fix bug in between parsing 2013-12-14 16:34:57 +02:00
Jake Wheat b001276337 work on haddock and a few renames 2013-12-14 14:10:46 +02:00
Jake Wheat c28db4d470 add haddock, reorder the fields in binop and jointref to be more natural 2013-12-14 13:33:15 +02:00
Jake Wheat 8ef799740c refactor the combo query expression parsing and the optional parts of a select query expr 2013-12-14 11:41:58 +02:00
Jake Wheat 931272d1db add with expressions, all tpch appear to parse correct, some of the later ones pretty print badly though 2013-12-14 00:58:12 +02:00
Jake Wheat 15c83555ff add support for full table aliases 2013-12-14 00:37:34 +02:00
Jake Wheat f08f4eb13b few small fixes
untested fix for case insensitive keywords
add partial support for interval literals
fix bug in prefix operator cast parsing
2013-12-14 00:07:45 +02:00
Jake Wheat 9c4719bda3 add support for union all and union corresponding and for intersect and except 2013-12-13 23:49:22 +02:00
Jake Wheat 1199342477 add support for union,intersect,except 2013-12-13 23:41:12 +02:00
Jake Wheat 64eb5a5c9d add window functions (without frames 2013-12-13 23:31:36 +02:00
Jake Wheat 81e7aa818b add support for extended aggregate syntax 2013-12-13 23:18:30 +02:00
Jake Wheat 546d9b023d add support for more is ... postfix ops 2013-12-13 21:34:59 +02:00