While operator overloads are a fancy tool, I feel like I have overused them - especially operator== for Command::Definition. I think they should be replaced with member functions like IsValidName or IsValidArgument - that would help with #5 too.
Note to self: IsValidArgument should also consider whether passed name is used somewhere as a parameter name.
While operator overloads are a fancy tool, I feel like I have overused them - especially operator== for Command::Definition. I think they should be replaced with member functions like IsValidName or IsValidArgument - that would help with #5 too.
Note to self: IsValidArgument should also consider whether passed name is used somewhere as a parameter name.