| 12345678910111213141516171819202122232425262728293031 | package predicatetype Predicate func() boolfunc All(predicates ...Predicate) Predicate {	return func() bool {		for _, p := range predicates {			if !p() {				return false			}		}		return true	}}func Any(predicates ...Predicate) Predicate {	return func() bool {		for _, p := range predicates {			if p() {				return true			}		}		return false	}}func Not(predicate Predicate) Predicate {	return func() bool {		return !predicate()	}}
 |