StringData.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 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_SRC_ACL_STRINGDATA_H
10 #define SQUID_SRC_ACL_STRINGDATA_H
11 
12 #include "acl/Acl.h"
13 #include "acl/Data.h"
14 #include "sbuf/SBuf.h"
15 
16 #include <set>
17 
18 class ACLStringData : public ACLData<char const *>
19 {
21 
22 public:
24  ~ACLStringData() override {}
26  bool match(char const *) override;
27  bool match(const SBuf &);
28  SBufList dump() const override;
29  void parse() override;
30  bool empty() const override;
31 
33  void insert(const char *);
34 
35 private:
36  typedef std::set<SBuf> StringValues_t;
38 };
39 
40 #endif /* SQUID_SRC_ACL_STRINGDATA_H */
41 
std::list< SBuf > SBufList
Definition: forward.h:22
Definition: SBuf.h:93
Configured ACL parameter(s) (e.g., domain names in dstdomain ACL).
Definition: Data.h:17
bool match(char const *) override
Definition: StringData.cc:39
~ACLStringData() override
Definition: StringData.h:24
void parse() override
Definition: StringData.cc:58
StringValues_t stringValues
Definition: StringData.h:37
SBufList dump() const override
Definition: StringData.cc:50
std::set< SBuf > StringValues_t
Definition: StringData.h:36
MEMPROXY_CLASS(ACLStringData)
void insert(const char *)
Insert a string data value.
Definition: StringData.cc:18
bool empty() const override
Definition: StringData.cc:65

 

Introduction

Documentation

Support

Miscellaneous