]> git.ipfire.org Git - thirdparty/squid.git/blame - src/acl/RegexData.h
Source Format Enforcement (#763)
[thirdparty/squid.git] / src / acl / RegexData.h
CommitLineData
225b7b10 1/*
f70aedc4 2 * Copyright (C) 1996-2021 The Squid Software Foundation and contributors
225b7b10 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.
225b7b10 7 */
bbc27441 8
225b7b10 9#ifndef SQUID_ACLREGEXDATA_H
10#define SQUID_ACLREGEXDATA_H
e1f7507e 11
3ad63615 12#include "acl/Data.h"
e1f7507e 13
e2b74520
AJ
14#include <list>
15
16class RegexPattern;
225b7b10 17
62e76326 18class ACLRegexData : public ACLData<char const *>
19{
b001e822 20 MEMPROXY_CLASS(ACLRegexData);
225b7b10 21
741c2986 22public:
225b7b10 23 virtual ~ACLRegexData();
24 virtual bool match(char const *user);
4f8ca96e 25 virtual SBufList dump() const;
225b7b10 26 virtual void parse();
4eac3407 27 virtual const Acl::ParameterFlags &supportedFlags() const;
65092baf 28 virtual bool empty() const;
5dee515e 29 virtual ACLData<char const *> *clone() const;
62e76326 30
31private:
e2b74520 32 std::list<RegexPattern> data;
225b7b10 33};
34
35#endif /* SQUID_ACLREGEXDATA_H */
f53969cc 36