public function matches($className, $methodName, $methodDeclaringClassName, $pointcutQueryIdentifier): bool
    {
        if ($this->isInterface === true) {
            return (array_search($this->interfaceOrClassName, class_implements($className)) !== false);
        } else {
            return ($className === $this->interfaceOrClassName || is_subclass_of($className, $this->interfaceOrClassName));
        }
    }