func SupplierWithPrependedArgs(s CmderSupplier, argsFunc func(cmd Cmd) []string) CmderSupplier {
	return func(cmd Cmd) (Cmder, error) {
		r, err := s(cmd)
		if err != nil {
			return nil, err
		}
		return CmderWithPrependedArgs(r, argsFunc(cmd)...), nil
	}
}
func SupplierWithPrependedArgs(s CmderSupplier, argsFunc func(cmd Cmd) []string) CmderSupplier {
	return func(cmd Cmd) (Cmder, error) {
		r, err := s(cmd)
		if err != nil {
			return nil, err
		}
		return CmderWithPrependedArgs(r, argsFunc(cmd)...), nil
	}
}
func SupplierWithPrependedArgs ( s CmderSupplier , argsFunc func ( cmd Cmd ) [ ] string ) CmderSupplier { return func ( cmd Cmd ) ( Cmder , error ) { r , err := s ( cmd ) if err != nil { return nil , err } return CmderWithPrependedArgs ( r , argsFunc ( cmd ) ... ) , nil } }
// SupplierWithPrependedArgs returns a new Supplier that invokes the provided supplier and returns the result of calling
// RunnerWithPrependedArgs on the returned runner with the result of applying the provided "argsFunc" function to the
// provided command.
SupplierWithPrependedArgs returns a new Supplier that invokes the provided supplier and returns the result of calling RunnerWithPrependedArgs on the returned runner with the result of applying the provided argsFunc function to the provided command .