61 lines
1.6 KiB
PHP
61 lines
1.6 KiB
PHP
<?php
|
|
/** @license MIT
|
|
* Copyright 2017 J. King, Dustin Wilson et al.
|
|
* See LICENSE and AUTHORS files for details */
|
|
|
|
declare(strict_types=1);
|
|
namespace JKingWeb\Arsse\Context;
|
|
|
|
class Context extends ExclusionContext {
|
|
/** @var ExclusionContext */
|
|
public $not;
|
|
public $reverse = false;
|
|
public $limit = 0;
|
|
public $offset = 0;
|
|
public $unread;
|
|
public $starred;
|
|
public $labelled;
|
|
public $annotated;
|
|
|
|
public function __construct() {
|
|
$this->not = new ExclusionContext($this);
|
|
}
|
|
|
|
public function __clone() {
|
|
// clone the exclusion context as well
|
|
$this->not = clone $this->not;
|
|
}
|
|
|
|
/** @codeCoverageIgnore */
|
|
public function __destruct() {
|
|
unset($this->not);
|
|
}
|
|
|
|
public function reverse(bool $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
|
|
public function limit(int $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
|
|
public function offset(int $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
|
|
public function unread(bool $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
|
|
public function starred(bool $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
|
|
public function labelled(bool $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
|
|
public function annotated(bool $spec = null) {
|
|
return $this->act(__FUNCTION__, func_num_args(), $spec);
|
|
}
|
|
}
|