1<?php
2
3/**
4 * Property list iterator. Do not instantiate this class directly.
5 */
6class HTMLPurifier_PropertyListIterator extends FilterIterator
7{
8
9    /**
10     * @type int
11     */
12    protected $l;
13    /**
14     * @type string
15     */
16    protected $filter;
17
18    /**
19     * @param Iterator $iterator Array of data to iterate over
20     * @param string $filter Optional prefix to only allow values of
21     */
22    public function __construct(Iterator $iterator, $filter = null)
23    {
24        parent::__construct($iterator);
25        $this->l = strlen($filter);
26        $this->filter = $filter;
27    }
28
29    /**
30     * @return bool
31     */
32    #[\ReturnTypeWillChange]
33    public function accept()
34    {
35        $key = $this->getInnerIterator()->key();
36        if (strncmp($key, $this->filter, $this->l) !== 0) {
37            return false;
38        }
39        return true;
40    }
41}
42
43// vim: et sw=4 sts=4
44