mirror of
https://code.mensbeam.com/MensBeam/Arsse.git
synced 2024-12-22 21:22:40 +00:00
73497688fc
This will make their expansion easier and will also be useful for using typed properties later
41 lines
981 B
PHP
41 lines
981 B
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 AbstractContext {
|
|
use BooleanMethods;
|
|
use BooleanProperties;
|
|
use ExclusionMethods;
|
|
use ExclusionProperties;
|
|
|
|
/** @var ExclusionContext */
|
|
public $not;
|
|
public $limit = 0;
|
|
public $offset = 0;
|
|
|
|
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);
|
|
}
|
|
}
|