]>
Commit | Line | Data |
---|---|---|
5dee515e | 1 | /* |
4ac4a490 | 2 | * Copyright (C) 1996-2017 The Squid Software Foundation and contributors |
5dee515e | 3 | * |
bbc27441 AJ |
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. | |
5dee515e | 7 | */ |
8 | ||
b0dd28ba | 9 | #ifndef SQUID_ACLINTRANGE_H |
10 | #define SQUID_ACLINTRANGE_H | |
63be0a78 | 11 | |
3ad63615 | 12 | #include "acl/Data.h" |
21dfc374 | 13 | #include "base/Range.h" |
5dee515e | 14 | |
cd44274b AJ |
15 | #include <list> |
16 | ||
b0dd28ba | 17 | class ACLIntRange : public ACLData<int> |
62e76326 | 18 | { |
19 | ||
20 | public: | |
cd44274b | 21 | ACLIntRange() {} |
62e76326 | 22 | |
b0dd28ba | 23 | virtual ~ACLIntRange(); |
24 | virtual bool match(int); | |
4f8ca96e | 25 | virtual SBufList dump() const; |
b0dd28ba | 26 | virtual void parse(); |
65092baf | 27 | virtual bool empty() const; |
b0dd28ba | 28 | virtual ACLData<int> *clone() const; |
62e76326 | 29 | |
b0dd28ba | 30 | private: |
e855eca1 | 31 | typedef Range<int> RangeType; |
cd44274b | 32 | std::list<RangeType> ranges; |
b0dd28ba | 33 | }; |
5dee515e | 34 | |
b0dd28ba | 35 | #endif /* SQUID_ACLINTRANGE_H */ |
f53969cc | 36 |