Webserv
Loading...
Searching...
No Matches
IArgument.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4
5namespace http {
6class Request;
7}
8
9namespace config {
10
12
13class IArgument {
14public:
15 virtual ~IArgument() {}
16 virtual std::string evaluate(http::Request const &) const = 0;
17 virtual ArgumentType getType() const = 0;
18 virtual std::string getRawValue() const = 0;
19 virtual IArgument *clone() const = 0;
20};
21
23
24} // namespace config
Definition IArgument.hpp:13
virtual ArgumentType getType() const =0
virtual std::string getRawValue() const =0
virtual ~IArgument()
Definition IArgument.hpp:15
virtual std::string evaluate(http::Request const &) const =0
virtual IArgument * clone() const =0
Definition Request.hpp:66
Definition ArgumentFactory.hpp:5
char const * getArgumentTypeName(ArgumentType)
Definition IArgument.cpp:5
ArgumentType
Definition IArgument.hpp:11
@ ARG_BOOL
Definition IArgument.hpp:11
@ ARG_INTEGER
Definition IArgument.hpp:11
@ ARG_STRING
Definition IArgument.hpp:11
@ ARG_VARIABLE
Definition IArgument.hpp:11
@ ARG_CONCATENATED
Definition IArgument.hpp:11
Definition IArgument.hpp:5