7793404975
MAINT: use dyn syntax for trait objects now.
2019-01-05 13:27:51 -06:00
8aa47282cd
DOCS: Fix some reference links.
2019-01-04 10:16:57 -06:00
a830047784
FEATURE: Add include as a string functionality.
...
Includes happy path tests for including a string.
fixes #15
2019-01-04 10:03:50 -06:00
59343d71d5
FEATURE: add a conatins operator
...
Adds the `in` operator that checks for fields in tuples and
elements in a list.
Fixes : #12
2019-01-03 11:42:11 -06:00
b24980bd1f
MAINT: Doc fixes.
2019-01-03 10:20:59 -06:00
9ec73868b5
FEATURE: evaluate dot selectors as a binary operator now.
...
Also fixed a precedence bug in our parser.
2019-01-02 16:57:55 -06:00
a028960a43
REFACTOR/FEATURE: Treat selectors as an operator.
2018-12-31 17:31:34 -06:00
fb292b4684
REFACTOR: Unify the Binary Operator AST data structures.
2018-12-31 17:24:07 -06:00
2b7c8e65f8
REFACTOR: Better scope handling.
2018-12-31 17:13:58 -06:00
2c9abddb61
REFACTOR: normalize eval method naming for values.
2018-12-31 11:08:39 -06:00
05aa57ae7f
REFACTOR: Builder => FileBuilder
2018-12-31 11:08:32 -06:00
a997b7b513
FEATURE: Add a subcommand to describe the ucg environment variables.
...
Also update documentation with help output.
2018-12-14 16:46:15 -06:00
821f1e9fb2
MAINT: Cleanup
...
TODO and FIXME removals.
Replaced unnecessary alt_peek! macro.
Renamed some types for clarity.
2018-12-14 16:01:17 -06:00
d26050cbbb
MAINT: formatting using cargo fmt.
2018-12-13 19:12:44 -06:00
2b47ca8617
FEATURE: Use UCG_IMPORT_PATH to identify the import paths.
...
fixes #9
2018-12-13 19:03:22 -06:00
f26e26d2ad
FEATURE: Support search paths for import statements.
...
A step toward #9
Adds builder support. We do not yet wire in the import paths.
2018-12-13 18:29:41 -06:00
0a09f26aad
FEATURE: Add xml namespace support.
2018-12-12 20:26:19 -06:00
3d017a76da
FEATURE: Initial xml export via a DSL.
2018-12-12 19:28:14 -06:00
b91fe1550b
FEATURE: XML output using a dsl to describe the DOM
2018-12-12 19:28:14 -06:00
2a99bbb33a
REFACTOR: rename macro now that nom is no longer used.
2018-12-12 19:18:37 -06:00
aab89f2d1a
MAINT: Removed debug print statements.
2018-12-12 19:05:20 -06:00
e15573d316
MAINT: Parsing peformance boosts.
2018-12-12 18:41:08 -06:00
8009c6a8a5
MAINT: Formatting cleanup.
2018-12-10 21:27:44 -06:00
9b5b7aa793
MAINT: Fix try macros to use ?
2018-12-06 13:14:01 -06:00
e9a0bde631
MAINT: Opt in to 2018 edition of Rust.
2018-12-06 12:23:52 -06:00
10d13de5a0
Fix -r arg argument.
...
It's not supposed to be required. :-p
2018-11-28 21:15:03 -06:00
1d5f0319f3
FEATURE: Detect import cycles.
2018-11-28 21:12:09 -06:00
8d73b5f648
CLEANUP: Don't use file everywhere in error messages.
2018-11-28 20:48:04 -06:00
163420ff55
REFACTOR: More consistent naming for Builder methods.
2018-11-28 20:23:32 -06:00
960dbef591
REFACTOR: Pass file into the constructor for builders.
2018-11-28 20:11:34 -06:00
02cc210eb2
Recurse flag can be used with flag input as arguments.
2018-11-27 17:48:41 -06:00
9d2d3843a5
MAINT: comment cleanup.
2018-11-27 15:03:27 -06:00
fe4bb1c9d7
FEATURE: allow tuples to have true or false as field names.
...
this allows selects where the condiotion is a boolean and you can choose
the true or false branch.
2018-11-26 23:08:14 -06:00
17a721a600
FEATURE: Use a command line flag to turn off strict mode.
2018-11-26 21:38:00 -06:00
aa183960d3
FEATURE: support a strict mode for building.
...
When strict mode is off then give a warning for unset env variables
and return NULL.
2018-11-26 21:36:50 -06:00
1365a38700
FEATURE: Check bindings against the reserved word list for imports and let bindings.
2018-11-26 20:22:37 -06:00
5e07f24d91
FEATURE: handle ENPTY specially. in copy expressions.
2018-11-25 13:26:47 -06:00
b797f099b4
REFACTOR: root is actually always a file. Lets call it as such.
...
Also have a helper function to get the current build_dir.
2018-11-25 13:03:33 -06:00
64e3b793ae
DOCS: Update docs for Modules.
...
Also since We have the reference site now not longer embed the reference in the library
documentation.
2018-11-23 13:14:29 -06:00
fa96c7c0ef
FEATURE: UCG Parameterized Modules
...
closes #10
Squashed commit of the following:
commit 3101c2bb9a385ed9e84481d36906a3e3ce93e571
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date: Wed Nov 21 20:10:31 2018 -0600
FEATURE: Module evaluation
* handle evaluating the module definition.
* Handle performing a module instantiation via the copy syntax.
commit 4ca863896b416e39f0c8eacc53384b9c514f6f14
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date: Tue Nov 20 18:38:19 2018 -0600
FEATURE: Add module parsing expression parsing to ucg.
changes toward issue #10
2018-11-23 12:51:13 -06:00
a9b374bf33
BUGFIX: Allow empty lists in parsing.
2018-11-21 20:41:54 -06:00
cb2f83f2ca
BUGFIX: Calling macros with no arguments could not be parsed.
2018-11-20 18:23:10 -06:00
e8e3ffab2c
FEATURE: Pretty print json output
...
closes #7
2018-11-18 13:56:38 -06:00
929a1ef180
BUGFIX: Separate env variables with a new line.
2018-11-17 21:49:56 -06:00
655f85a5b1
BUGFIX: A bug in boolean values for flag converters.
2018-11-17 21:40:37 -06:00
eebe0bbe67
FEATURE: Add toml as an output converter.
...
closes #4
2018-11-16 13:26:11 -06:00
bdf56f6d3c
FEATURE: Allow self references when doing a tuple copy.
...
Closes #3
2018-11-16 10:36:06 -06:00
0bbb417f69
FIXES: Fixed bug when recursing through directories.
...
Also removed unnecessary print statements.
2018-11-16 08:54:30 -06:00
15026423db
REFACTOR: Rename our error::Error type to BuildError.
2018-11-12 18:07:31 -06:00
d2f0ea9f24
FEATURE: Better error reporting.
...
Slight change to how assert works to support this. We no longer automatically add
a semicolon to the expressions we require the user to right them. This updates the
docs to illustrate that and reformats our integration test suite for this and
readability.
2018-11-06 19:40:56 -06:00