2019-02-26 03:41:12 +00:00
|
|
|
<?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 {
|
2019-02-26 04:59:48 +00:00
|
|
|
/** @var ExclusionContext */
|
2019-02-26 03:41:12 +00:00
|
|
|
public $not;
|
|
|
|
public $limit = 0;
|
|
|
|
public $offset = 0;
|
|
|
|
public $unread;
|
|
|
|
public $starred;
|
|
|
|
public $labelled;
|
|
|
|
public $annotated;
|
|
|
|
|
|
|
|
public function __construct() {
|
2019-02-26 04:37:14 +00:00
|
|
|
$this->not = new ExclusionContext($this);
|
2019-02-26 03:41:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
public function __clone() {
|
|
|
|
// clone the exclusion context as well
|
|
|
|
$this->not = clone $this->not;
|
|
|
|
}
|
|
|
|
|
2019-02-26 16:12:40 +00:00
|
|
|
/** @codeCoverageIgnore */
|
2019-02-26 04:37:14 +00:00
|
|
|
public function __destruct() {
|
|
|
|
unset($this->not);
|
|
|
|
}
|
|
|
|
|
2019-02-26 03:41:12 +00:00
|
|
|
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);
|
|
|
|
}
|
|
|
|
}
|