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