Assign.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2022 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/* DEBUG: section 86 ESI processing */
10
11#ifndef SQUID_ESIASSIGN_H
12#define SQUID_ESIASSIGN_H
13
14#include "esi/Element.h"
15#include "esi/VarState.h"
16#include "SquidString.h"
17
20{
21public:
23 ESIVariableExpression (String const &value);
24 virtual void eval (ESIVarState &state, char const *, char const *) const;
25
26private:
28};
29
30class ESIContext;
31
32class ESIAssign : public ESIElement
33{
35
36public:
37 ESIAssign (esiTreeParentPtr, int, const char **, ESIContext *);
38 ESIAssign (ESIAssign const &);
40 ~ESIAssign();
41 esiProcessResult_t process (int dovars);
44 void provideData (ESISegment::Pointer data, ESIElement * source);
45 Pointer makeCacheable() const;
47 void finish();
48
49private:
50 void evaluateVariable();
57};
58
59#endif /* SQUID_ESIASSIGN_H */
60
esiProcessResult_t
Definition: Element.h:18
ESIVarState * varState
Definition: Assign.h:52
void finish()
Definition: Assign.cc:140
esiTreeParentPtr parent
Definition: Assign.h:51
esiProcessResult_t process(int dovars)
Definition: Assign.cc:92
void render(ESISegment::Pointer)
Definition: Assign.cc:112
MEMPROXY_CLASS(ESIAssign)
void provideData(ESISegment::Pointer data, ESIElement *source)
Definition: Assign.cc:83
ESIElement::Pointer variable
Definition: Assign.h:55
Pointer makeUsable(esiTreeParentPtr, ESIVarState &) const
Definition: Assign.cc:127
ESIVariableExpression * value
Definition: Assign.h:54
String unevaluatedVariable
Definition: Assign.h:56
ESIAssign(esiTreeParentPtr, int, const char **, ESIContext *)
Definition: Assign.cc:32
String name
Definition: Assign.h:53
~ESIAssign()
Definition: Assign.cc:23
void evaluateVariable()
Definition: Assign.cc:60
bool addElement(ESIElement::Pointer)
Definition: Assign.cc:150
Pointer makeCacheable() const
Definition: Assign.cc:116
ESIAssign & operator=(ESIAssign const &)
virtual void eval(ESIVarState &state, char const *, char const *) const
Definition: Assign.cc:170
ESIVariableExpression(String const &value)
Definition: Assign.cc:166

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors