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 {
21 public:
23  ESIVariableExpression (String const &value);
24  virtual void eval (ESIVarState &state, char const *, char const *) const;
25 
26 private:
28 };
29 
30 class ESIContext;
31 
32 class ESIAssign : public ESIElement
33 {
35 
36 public:
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 
49 private:
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
ESIAssign & operator=(ESIAssign const &)
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
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