23 Commits

Author SHA1 Message Date
4c2528fe07 FEATURE: Allow expressions at the beginning of a Selector. 2017-12-21 19:44:55 -06:00
3acf8e4679 Readability: Breakup some functions.
Smaller functions make it easier to read the code.
2017-12-03 18:24:26 -06:00
64e4fb6a28 Cleanup: Extraneous types, compact code, and fmt.
* Got rid of LocatedNode since it was the same thing as Positioned.
* Positioned has a constructor now.
* Cleaned up some unnecessary macros.
* Created some more macros to make code more compact.
* Ran cargo fmt
* Some fixes to the README.
2017-12-03 17:24:13 -06:00
091cde9ffb Feature: add list concatenation. 2017-11-30 22:39:41 -06:00
fffdad589c Refactor: Finish converting all the enum types to tuple around struct pattern. 2017-11-29 19:07:36 -06:00
389f395383 Cleanup: formatting and todos
cargo fmt
changed a fixme to a todo
2017-11-29 18:42:33 -06:00
afdd2e5be8 List Parsing and evaluation support.
Also some formatting and todo cleanup.
2017-11-26 12:22:58 -05:00
e975dea201 cleanup: fix some selector vs symbol parsing issues
Add test coverage of selector parsing.
2017-11-15 22:41:55 -06:00
b8c7d660e5 No more Optional Position information. 2017-11-08 20:06:38 -06:00
0be96dc851 cargo fmt 2017-11-08 18:55:10 -06:00
4f3cc3dbf6 Thread position information through to more places. 2017-11-08 18:44:56 -06:00
1e3d19755c Add location information for all tokens.
Also add optional position information for some of the AST elements.
2017-11-05 15:26:52 -06:00
c091878364 Add a macro for constructing values with or without a position. 2017-09-23 11:33:50 -05:00
14bbd19f16 Renamed BinaryExpression to BinaryOpDef for consistency. 2017-09-21 08:12:18 -05:00
53d598b773 Refactor Add position fields to our Expression Definition Structs 2017-09-21 08:10:09 -05:00
f95ecddea2 Refactored Binary Expressions to a common type and cleaned it up 2017-09-21 07:50:34 -05:00
a8b6e7f851 Refactor the Format Expression to use a FormatDef struct. 2017-09-21 07:50:11 -05:00
42fe368dae Refactor the Copy expression to use a CopyDef struct. 2017-09-21 07:49:43 -05:00
b3677861c6 Add datastructure to support tracking position of Value nodes in the AST. 2017-09-21 07:49:17 -05:00
6c3662d361 Revert "WIP: Track the positions of our tokens and AST elements."
This reverts commit b4ec44323b25f7532964a543ac52e905349dc314.
2017-09-18 18:32:47 -05:00
b4ec44323b WIP: Track the positions of our tokens and AST elements. 2017-09-12 20:08:58 -05:00
31dadd47f6 Add a validation step for Macros.
Ensure that only symbols declared in the macro arguments are used in
the expressions.
2017-09-07 14:29:32 -05:00
45b9712380 Some Refactoring and cleanups.
* Moved the AST datastructures into their own module.
* Collapsed the Expression Enum to just wrappers around structs
  instead of having actual structs in the definitions.
* Added a few more unit tests to ensure nothing got broken.
* Added documentation for the new structs.
* Added a unifying BinaryExpression Tuple type.
2017-09-06 18:16:28 -05:00