MCPcopy Create free account
hub / github.com/apache/trafficserver / parse_matcher_op

Function parse_matcher_op

plugins/header_rewrite/condition.cc:28–67  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

26#include "condition.h"
27
28static MatcherOps
29parse_matcher_op(std::string &arg)
30{
31 switch (arg[0]) {
32 case '=':
33 arg.erase(0, 1);
34 return MATCH_EQUAL;
35 break;
36 case '<':
37 arg.erase(0, 1);
38 return MATCH_LESS_THEN;
39 break;
40 case '>':
41 arg.erase(0, 1);
42 return MATCH_GREATER_THEN;
43 break;
44 case '/':
45 arg.erase(0, 1);
46 // There should be a slash at the end
47 if (arg.length() >= 1 && arg[arg.length() - 1] == '/') {
48 arg.erase(arg.length() - 1, arg.length());
49 return MATCH_REGULAR_EXPRESSION;
50 } else {
51 return MATCH_ERROR;
52 }
53 break;
54 case '{':
55 arg.erase(0, 1);
56 // There should be a right brace at the end
57 if (arg.length() >= 1 && arg[arg.length() - 1] == '}') {
58 arg.erase(arg.length() - 1, arg.length());
59 return MATCH_IP_RANGES;
60 } else {
61 return MATCH_ERROR;
62 }
63 default:
64 return MATCH_EQUAL;
65 break;
66 }
67}
68
69void
70Condition::initialize(Parser &p)

Callers 1

initializeMethod · 0.85

Calls 2

eraseMethod · 0.45
lengthMethod · 0.45

Tested by

no test coverage detected