private function predicateName(): string
    {
        if (is_array($this->predicate)) {
            if (is_string($this->predicate[0])) {
                return $this->predicate[0] . '::' . $this->predicate[1] . '()';
            }

            return get_class($this->predicate[0]) . '->' . $this->predicate[1] . '()';
        } elseif (is_string($this->predicate)) {
            return $this->predicate . '()';
        }

        return 'a lambda function';
    }
private function predicateName(): string
    {
        if (is_array($this->predicate)) {
            if (is_string($this->predicate[0])) {
                return $this->predicate[0] . '::' . $this->predicate[1] . '()';
            }

            return get_class($this->predicate[0]) . '->' . $this->predicate[1] . '()';
        } elseif (is_string($this->predicate)) {
            return $this->predicate . '()';
        }

        return 'a lambda function';
    }
private function predicateName ( ) : string { if ( is_array ( $ this -> predicate ) ) { if ( is_string ( $ this -> predicate [ 0 ] ) ) { return $ this -> predicate [ 0 ] . '::' . $ this -> predicate [ 1 ] . '()' ; } return get_class ( $ this -> predicate [ 0 ] ) . '->' . $ this -> predicate [ 1 ] . '()' ; } elseif ( is_string ( $ this -> predicate ) ) { return $ this -> predicate . '()' ; } return 'a lambda function' ; }
tries to determine a name for the callable

@return  string
tries to determine a name for the callable