# Functions
NewParser returns an initialized Parser.
# Structs
BuildCmd is a wrapper for the os/exec call for `docker build`.
A CommandSequence is an intermediate data type in the parsing process.
DockerCmdOpts is an options struct for the options required by the various
structs that implement the DockerCmd interface
*/.
An InstructionSet is an intermediate datatype - once a Builderfile is parsed
and the TOML is validated, the parser parses the data into an InstructionSet.
Parser is a struct that contains a Builderfile and knows how to parse it both
as raw text and to convert toml to a Builderfile struct.
PushCmd is a wrapper for the docker PushImage functionality.
A SubSequence is a logical grouping of commands such as a sequence of build,
tag, and push commands.
SubSequenceMetadata contains any important metadata about the container build
such as the name of the Dockerfile and which files/dirs to exclude.
TagCmd is a wrapper for the docker TagImage functionality.
# Interfaces
DockerCmd is an interface that wraps the various docker command types.