Skip to content

Consider removing ICommand, IOption, and IArgument #1402

@jonsequitur

Description

@jonsequitur

These interfaces were originally introduced when the parser components were made mutable. They were intended provide a "read-only" API for parse results that would discourage modifying an already-configured Parser, because tracking state changes is additional overhead and complexity. But additional implementations of these interfaces aren't intended to be supported and might not work as expected. Removing them could simplify some code.

We would want to address issues that might come up from e.g. adding Option aliases after the construction of a Parser.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions