27 return empty() ?
SBufList() : nodes.front()->dump();
33 assert(start == nodes.begin());
50 const auto oldNode = empty() ? nullptr : nodes.front().getRaw();
60 newWhole->
context(
ToSBuf(
'(', name,
" lines)"), oldNode->cfgline);
61 newWhole->
add(oldNode);
62 nodes.front() = whole = newWhole;
char config_input_line[BUFSIZ]
bool keepMatching() const
Whether we should continue to match tree nodes or stop/pause.
bool matchChild(const Acl::InnerNode *parent, Acl::Nodes::const_iterator pos)
void parse() override
parses node representation in squid.conf; dies on failures
int doMatch(ACLChecklist *checklist, Nodes::const_iterator start) const override
char const * typeString() const override
SBufList dump() const override
An intermediate Acl::Node tree node. Manages a collection of child tree nodes.
Nodes::size_type childrenCount() const
the number of children nodes
void add(Acl::Node *node)
appends the node to the collection and takes control over it
void context(const SBuf &aName, const char *configuration)
sets user-specified ACL name and squid.conf context
SBuf ToSBuf(Args &&... args)
slowly stream-prints all arguments into a freshly allocated SBuf
std::list< SBuf > SBufList