utils.go 974 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package main
  2. import (
  3. "fmt"
  4. )
  5. const gitEmptyTree = "4b825dc642cb6eb9a060e54bf8d69288fbee4904"
  6. func stringSliceEqual(a, b []string) bool {
  7. if a == nil && b == nil {
  8. return true
  9. }
  10. if a == nil || b == nil {
  11. return false
  12. }
  13. if len(a) != len(b) {
  14. return false
  15. }
  16. for i := 0; i < len(a); i++ {
  17. if a[i] != b[i] {
  18. return false
  19. }
  20. }
  21. return true
  22. }
  23. func removeInvalidTargets(targets []string) []string {
  24. filteredTargets := make([]string, 0)
  25. for _, target := range targets {
  26. db, _ := splitDBFromName(target)
  27. if db == "aur" && mode == modeRepo {
  28. fmt.Printf("%s %s %s\n", bold(yellow(arrow)), cyan(target), bold("Can't use target with option --repo -- skipping"))
  29. continue
  30. }
  31. if db != "aur" && db != "" && mode == modeAUR {
  32. fmt.Printf("%s %s %s\n", bold(yellow(arrow)), cyan(target), bold("Can't use target with option --aur -- skipping"))
  33. continue
  34. }
  35. filteredTargets = append(filteredTargets, target)
  36. }
  37. return filteredTargets
  38. }