Files
firefly-iii/app/Support/Search/QueryParser/Node.php

32 lines
774 B
PHP
Raw Normal View History

2025-01-02 22:17:56 +01:00
<?php
declare(strict_types=1);
namespace FireflyIII\Support\Search\QueryParser;
/**
* Base class for all nodes
*/
abstract class Node
{
protected bool $prohibited;
2025-01-03 00:07:57 +01:00
/**
* Returns the prohibited status of the node, optionally inverted based on flipFlag
*
* Flipping is used when a node is inside a NodeGroup that has a prohibited status itself, causing inversion of the query parts inside
*
* @param bool $flipFlag When true, inverts the prohibited status
* @return bool The (potentially inverted) prohibited status
*/
public function isProhibited(bool $flipFlag): bool
2025-01-02 22:17:56 +01:00
{
2025-01-03 00:07:57 +01:00
if ($flipFlag === true) {
return !$this->prohibited;
} else {
return $this->prohibited;
}
2025-01-02 22:17:56 +01:00
}
}