<?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 $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 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); } }