def process_command(command: CommandInput, matrix: VarMatrix) -> List[Command]:
    """Generate all combinations of commands given a variable matrix.

    Processes the commands to be sequences of strings.

    """
    assert command is not None
    if isinstance(command, str):
        command_list = [Command(command, variables=variables) for variables in matrix]
    elif isinstance(command, list):
        command_list = [Command(command, variables=variables) for variables in matrix]
    else:
        if command.get("command") is not None:
            cmd = command.get("command")
        else:
            cmd = command.get("cmd")
        creates = str(command.get("creates", ""))
        requires = str(command.get("requires", ""))

        assert isinstance(cmd, (list, str))
        command_list = [
            Command(cmd, variables, creates, requires) for variables in matrix
        ]
    return uniqueify(command_list)
def process_command ( command : CommandInput , matrix : VarMatrix ) -> List [ Command ] : assert command is not None if isinstance ( command , str ) : command_list = [ Command ( command , variables = variables ) for variables in matrix ] elif isinstance ( command , list ) : command_list = [ Command ( command , variables = variables ) for variables in matrix ] else : if command . get ( "command" ) is not None : cmd = command . get ( "command" ) else : cmd = command . get ( "cmd" ) creates = str ( command . get ( "creates" , "" ) ) requires = str ( command . get ( "requires" , "" ) ) assert isinstance ( cmd , ( list , str ) ) command_list = [ Command ( cmd , variables , creates , requires ) for variables in matrix ] return uniqueify ( command_list )
Generate all combinations of commands given a variable matrix.

    Processes the commands to be sequences of strings.