[ ] AbcConfig is a friend of AbcSmc (so can access private fields)
[ ] ... has concretely defined all the defaults, setters, etc necessary to fully specify a runnable AbcSmc state
[ ] AbcConfig has a template, virtual parse method (possibly also a deserialize? takes plain string filename and inflates to the relevant type for parse?). Sub classes define this parse
[ ] AbcConfig has a build method (receives filename => deserialize => parse => check state => yields an AbcSmc ready to work)
[ ] maybe defined AbcConfig static method to serve up relevant parser, based on sniffing filetype?
AbcConfig
is a friend ofAbcSmc
(so can access private fields)AbcSmc
stateAbcConfig
has a template, virtualparse
method (possibly also a deserialize? takes plain string filename and inflates to the relevant type for parse?). Sub classes define thisparse
AbcConfig
has abuild
method (receives filename => deserialize => parse => check state => yields an AbcSmc ready to work)AbcConfig
static method to serve up relevant parser, based on sniffing filetype?