<?php
namespace SabaiApps\Framework\Criteria;

/**
 * CompositeNotCriteria class for representing a NOT logical operation on composite criteria.
 * Extends CompositeCriteria and implements the visitor pattern for NOT logic.
 */
class CompositeNotCriteria extends CompositeCriteria {

	/**
	 * Accepts a Visitor object for traversing or evaluating the NOT composite criteria.
	 *
	 * @param IVisitor $visitor Visitor object.
	 * @param mixed    $valuePassed Value to pass to the visitor.
	 * @return mixed
	 */
	public function acceptVisitor( IVisitor $visitor, &$valuePassed ) {
		return $visitor->visitCriteriaCompositeNot( $this, $valuePassed );
	}
}
