RegexData.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_REGEXDATA_H
10 #define SQUID_SRC_ACL_REGEXDATA_H
11 
12 #include "acl/Data.h"
13 
14 #include <list>
15 
16 class RegexPattern;
17 
18 class ACLRegexData : public ACLData<char const *>
19 {
21 
22 public:
23  ~ACLRegexData() override;
24  bool match(char const *user) override;
25  SBufList dump() const override;
26  void parse() override;
27  bool empty() const override;
28 
29 private:
32 
33  /* ACLData API */
34  const Acl::Options &lineOptions() override;
35 
36  std::list<RegexPattern> data;
37 };
38 
39 #endif /* SQUID_SRC_ACL_REGEXDATA_H */
40 
std::vector< const Option * > Options
Definition: Options.h:217
~ACLRegexData() override
Definition: RegexData.cc:31
std::list< SBuf > SBufList
Definition: forward.h:22
bool empty() const override
Definition: RegexData.cc:253
Configured ACL parameter(s) (e.g., domain names in dstdomain ACL).
Definition: Data.h:17
void parse() override
Definition: RegexData.cc:221
const Acl::Options & lineOptions() override
supported ACL "line" options (e.g., "-i")
Definition: RegexData.cc:36
static Acl::BooleanOptionValue CaseInsensitive_
whether parse() is called in a case insensitive context
Definition: RegexData.h:31
bool match(char const *user) override
Definition: RegexData.cc:45
std::list< RegexPattern > data
Definition: RegexData.h:36
MEMPROXY_CLASS(ACLRegexData)
SBufList dump() const override
Definition: RegexData.cc:66

 

Introduction

Documentation

Support

Miscellaneous