27 Commits

Author SHA1 Message Date
a5fe59bb7c Add help text functionality for converters. 2019-03-25 20:34:40 -04:00
ceaed5c543 REFACTOR: No longer require PositionedItem for Val::Tuples. 2019-02-19 16:38:06 -06:00
a6eab6a459 REFACTOR: Rename convert::traits::Result to convert::traits::ConvertResult. 2019-02-19 14:50:55 -06:00
fdbbf0fb01 FEATURE: Add json as an include format.
Include a json file and it will be transformed into the UCG
intermediate format and usable in your ucg file.
2019-02-19 14:45:46 -06:00
f1c7d76fdd REFACTOR: The great renaming macro -> func. 2019-01-24 20:04:40 -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
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
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
e8e3ffab2c FEATURE: Pretty print json output
closes #7
2018-11-18 13:56:38 -06:00
6712fc9bb5 Merge squash of the no_more_nom branch
commit e4c80b19f5149fb7dba0a9b785e22ff5323b5470
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Sun Nov 4 09:54:16 2018 -0600

    FEATURE: report better stacktraces for parsing.

commit 24b97c1037d6ddbe21f32e172b1c14cd2cfb9910
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Wed Oct 17 19:00:29 2018 -0500

    FEATURE: Use context for our error reporting.

commit c22d397545e7575608e34561a274745b28be8c2c
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Sun Oct 14 14:18:42 2018 -0500

    FIX: Better error reporting.

commit 7f47dc3f38bf6a3e8686c1fa3fd50ef97d4bf3af
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Sat Oct 13 19:42:22 2018 -0500

    REFACTOR: Pass our offsets everywhere.

commit 91d7ed690bfd9989270ba9fa4f44c70f513d54b9
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Sun Sep 23 15:08:45 2018 -0500

    REFACTOR: Use abortable_parser.
2018-11-05 21:34:12 -06:00
398fbc7e1b FEATURE: Support limited help for the available converters. 2018-08-22 00:13:11 -05:00
6418533562 UI: Command line subcommands and arguments are more usable.
The build and validate commands now take a list of files to process.

The outputs for files that specify the are given the same name as
the containing file with the extension changed to the extension that
the converter specifies.
2018-08-15 18:32:28 -05:00
c5e07daa7b FEATURE: Add an exec conversion target. 2018-06-21 11:40:05 -04:00
db9617bd6f REFACTOR: Don't presume io::Result for the converter Result. 2018-06-18 22:07:18 -05:00
5d32dc83a4 CLEANUP: Fix naming to not collide with String when using. 2018-06-10 14:13:08 -05:00
2df6cece33 CLEANUP: Extraneous TODOs 2018-05-27 21:07:07 -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
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
bfde2c5238 Add Boolean types. 2018-03-23 17:31:30 -05:00
8a6935c3da FEATURE: NULL or empty values in the type system.
* Flags with empty values are considered not having a value they are set to.
* Json outputs empty values as null.
* Env ignores variable with empty values.
2018-03-12 20:37:23 -05:00
bafe5b3c30 cargo fmt pass with the new rustfmt-preview 2018-02-15 19:55:43 -06:00
30c9bc64b2 The great documentation roundup.
Add docstrings for all kinds of types.
2018-02-07 20:22:08 -06:00
a2f689ce0d Cleanup and formatting.
* Unused code warnings.
* Ran cargo fmt.
2018-02-05 19:43:04 -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