1 /*
2  * Copyright (C) 1996-2021 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef SQUID_ACLINTRANGE_H
10 #define SQUID_ACLINTRANGE_H
11 
12 #include "acl/Data.h"
13 #include "Range.h"
14 
15 #include <list>
16 
17 class ACLIntRange : public ACLData<int>
18 {
19 
20 public:
ACLIntRange()21     ACLIntRange() {}
22 
23     virtual ~ACLIntRange();
24     virtual bool match(int);
25     virtual SBufList dump() const;
26     virtual void parse();
27     virtual bool empty() const;
28     virtual ACLData<int> *clone() const;
29 
30 private:
31     typedef Range<int> RangeType;
32     std::list<RangeType> ranges;
33 };
34 
35 #endif /* SQUID_ACLINTRANGE_H */
36 
37