Brian Picciano
4791c02122
mcfg: implement ParamDefaultOrRequired
2019-06-23 12:55:11 -06:00
Brian Picciano
dd2d601081
mcfg: refactor so as to use new mcmp.Component type, and use the option pattern to reduce number of arguments to parameters
2019-06-15 16:45:53 -06:00
Brian Picciano
2eb4a37533
mcfg: make Parse and Populate return a Context, to allow for sub-commands
2019-04-04 12:52:43 -04:00
Brian Picciano
a596306d9e
mcfg: made SourceCLI and SourceEnv be pointers
2019-04-04 10:57:37 -04:00
Brian Picciano
e1e52db208
refactor everything to use context's annotation system, making some significant changes to annotations themselves along the way
2019-02-24 15:36:07 -05:00
Brian Picciano
4b446a0efc
mctx: refactor so that contexts no longer carry mutable data
...
This change required refactoring nearly every package in this project,
but it does a lot to simplify mctx and make other code using it easier
to think about.
Other code, such as mlog and mcfg, had to be slightly modified for this
change to work as well.
2019-02-07 19:42:12 -05:00
Brian Picciano
6e8338a5f8
mcfg: refactor to remove Child and Hook stuff, and use mctx instead
2019-01-08 14:21:55 -05:00
Brian Picciano
7db5197a1e
mcfg: add some helper methods to Cfg related to its Path
2018-05-28 03:10:57 +00:00
Brian Picciano
4e0d440d09
mcfg: refactor slightly to separate Run into StartRun and StopRun
2018-05-28 02:39:56 +00:00
Brian Picciano
3d43caba18
implement mcfg package, which includes both configuration, runtime setup, and organizing both into heirarchies
2018-02-14 18:24:54 +00:00