38 Commits

Author SHA1 Message Date
a7a32d56b2 FEATURE: More ergonomic syntax for asserts. 2018-08-20 22:51:55 -05:00
263cccc97a DOCS: Update documentation for selectors. 2018-08-19 09:35:13 -05:00
deb593ad56 DOCS: Update docs with new features. 2018-08-17 22:09:57 -05:00
be1fb4e678 FIX: Fixes some bugs with the import processing. 2018-08-14 16:12:02 -05:00
3779c4912d CLEANUP: Documentation and public interface.
* Added missing docs for public methods or functions.
* Made private methods or functions that didn't need to be exposed.
* Cleaned up spelling and grammar on some of the docstrings.
2018-07-16 17:32:09 -05:00
2d71145813 FEATURE: Evaluation of an Assert Statement. 2018-06-06 20:38:53 -05:00
223d0cecf0 FEATURE: Parsing support for assert statements. 2018-06-06 20:38:53 -05:00
ab8eb9f101 DOCS: Expand on the restrictions for macros. 2018-06-06 20:36:16 -05:00
aa8d2cab29 FEATURE: Allow trailing commas in the tuple, copy, and list syntax 2018-05-28 08:15:48 -05:00
fdd8a35086 CLEANUP: The great test module refactor.
Move tests into a separate file for more manageable file
organization.
2018-05-22 18:58:08 -05:00
8164792927 Documentation fix. 2018-05-14 21:52:49 -05:00
3873b1c98a RELEASE: v0.1.0 release prep
- Documentation fixes for operator precendence changes.
- Mark this as a v0.1.0 change for with potential breaking api changes.
- Cleanup TODO documentation.
2018-05-14 21:49:10 -05:00
00c1e1751a Formatting: cargo fmt. 2018-05-14 21:34:38 -05:00
4265b0177b split ast handling into a separate module directory. 2018-04-16 20:05:54 -05:00
37bb75b891 Add comparison operators. 2018-03-29 09:51:08 -05:00
bfde2c5238 Add Boolean types. 2018-03-23 17:31:30 -05:00
eeac1ba599 Parsing the map operations. 2018-03-21 19:01:38 -05:00
141385920a Update language spec with the NULL empty type. 2018-03-17 09:17:51 -05:00
0a8f3d703d More documentation cleanup and a reexport.
Grammar, spelling, and wording fixes. Also reexport the Val
type which is the intermediate type of a compiled config.
2018-03-12 21:34:40 -05:00
5a03cc33ef FEATURE: Allow Environment Variables to be referenced in the builder. 2018-03-12 19:21:47 -05:00
bafe5b3c30 cargo fmt pass with the new rustfmt-preview 2018-02-15 19:55:43 -06:00
e3e8e68f19 Documentation formatting, grammar, and spelling. 2018-02-05 20:05:20 -06:00
a2f689ce0d Cleanup and formatting.
* Unused code warnings.
* Ran cargo fmt.
2018-02-05 19:43:04 -06:00
1e063fd129 Add escaping using a backslash for string tokens. 2018-02-05 19:38:54 -06:00
6b27ff1d25 Basic language reference in the ucglib docs. 2018-02-05 08:44:14 -06:00
5fba06d71f Add json as an output type.
* Uses serde_json
* Doesn't handle macro values very well.
* Handles maps and lists just fine.
* doesn't pretty print the values though.
2018-02-04 16:08:30 -06:00
97c97ced55 Finish splitting the Tokenization and parsing stages.
* Added some helper matcher macros for tokens.
* Added some helper assertion macros for tests.
* Tokenization and Parsing are two separate stages.
2018-02-02 15:29:24 -06:00
336dd5e5ea FEATURE: Parsing of comments. 2017-12-24 15:24:06 -05:00
7a0a194fb9 Feature: Better error reporting.
* Common Error Type with line and column reporting.
* Removed some todos.
2017-12-09 10:02:45 -06:00
e975dea201 cleanup: fix some selector vs symbol parsing issues
Add test coverage of selector parsing.
2017-11-15 22:41:55 -06:00
45d0fb6e59 Add tokenizer mode that uses nom to parse the individual tokens.
This allows us to start to break down the problem into tokens and their
position in the parsed syntax.
2017-10-02 21:32:06 -05:00
c091878364 Add a macro for constructing values with or without a position. 2017-09-23 11:33:50 -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
9df7d57f69 Add format string support. 2017-08-09 21:21:36 -05:00
4f18686fb8 Add README and License information. 2017-07-11 20:36:05 -05:00
72d03e21dd Add the build module.
Builder struct that takes a list of Statements and constructs a
Tuple from it.
2017-07-11 20:36:05 -05:00
4a156adae2 Refactor into separate modules for parsing and interpreting. 2017-07-11 20:36:05 -05:00
c6af1543bf Basic Parsing for the language.
The start of defining a languge for configuration generation.
2017-07-11 20:36:05 -05:00