Kea  2.1.7-git
isc::dhcp::TokenEqual Class Reference

Token that represents equality operator (compares two other tokens) More...

#include <token.h>

+ Inheritance diagram for isc::dhcp::TokenEqual:

Public Member Functions

 TokenEqual ()
 Constructor (does nothing) More...
 
void evaluate (Pkt &pkt, ValueStack &values)
 Compare two values. More...
 
- Public Member Functions inherited from isc::dhcp::Token
virtual ~Token ()
 Virtual destructor. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from isc::dhcp::Token
static bool toBool (std::string value)
 Coverts a (string) value to a boolean. More...
 

Detailed Description

Token that represents equality operator (compares two other tokens)

For example in the expression option[vendor-class].text == "MSFT" this token represents the equal (==) sign.

Definition at line 721 of file token.h.

Constructor & Destructor Documentation

◆ TokenEqual()

isc::dhcp::TokenEqual::TokenEqual ( )
inline

Constructor (does nothing)

Definition at line 724 of file token.h.

Member Function Documentation

◆ evaluate()

void TokenEqual::evaluate ( Pkt pkt,
ValueStack values 
)
virtual

Compare two values.

Evaluation does not use packet information, but rather consumes the last two parameters. It does a simple string comparison and sets the value to either "true" or "false". It requires at least two parameters to be present on stack.

Exceptions
EvalBadStackif there are less than 2 values on stack
Parameters
pkt(unused)
values- stack of values (2 arguments will be popped, 1 result will be pushed)

Implements isc::dhcp::Token.

Definition at line 664 of file token.cc.

References isc::dhcp::EVAL_DBG_STACK, isc::dhcp::EVAL_DEBUG_EQUAL, isc::dhcp::eval_logger, isc_throw, LOG_DEBUG, and isc::util::encode::toHex().

+ Here is the call graph for this function:

The documentation for this class was generated from the following files: