Adding back in conf
[m6w6/libmemcached] / libmemcached / options / scanner.l
index b53298ccdca54756e7339ed430c26cccc6c40c5c..cc00618d786a059e73da65c16e69711c4f860fac 100644 (file)
 
 %top{
 
-#pragma GCC diagnostic ignored "-Wold-style-cast"
-#pragma GCC diagnostic ignored "-Wunused-parameter"
-
+#include <libmemcached/common.h>
 #include <libmemcached/options/context.h>
 #include <libmemcached/options/parser.h>
-#include <libmemcached/options/string.h>
 #include <libmemcached/options/symbol.h>
 
+#pragma GCC diagnostic ignored "-Wold-style-cast"
+#pragma GCC diagnostic ignored "-Wsign-compare"
+#pragma GCC diagnostic ignored "-Wunused-parameter"
+
 #define YY_EXTRA_TYPE Context*
 
 }
 
 =|,|[ ]       { return yytext[0];}
 
-[[:digit:]]+ { yylval->number = atoi(yytext); return (NUMBER); }
+[[:digit:]]+ { yylval->number= atoi(yytext); return (NUMBER); }
 
-:[[:digit:]]{1,5} { yylval->server.port = atoi(yytext +1); return PORT; }
+:[[:digit:]]{1,5} { yylval->number= atoi(yytext +1); return PORT; }
 
-"/?"[[:digit:]]{1,5} { yylval->server.weight = atoi(yytext +2); return WEIGHT_START; }
+"/?"[[:digit:]]{1,5} { yylval->number= atoi(yytext +2); return WEIGHT_START; }
 
 [\t\r\n] ; /* skip whitespace */
 
 
 "--SERVER="                          { yyextra->begin= yytext; yyextra->set_server(); return SERVER; }
 
-"--VERIFY_KEY"                      { yyextra->begin= yytext; return VERIFY_KEY; }
-"--VERIFY-KEY"                      { yyextra->begin= yytext; return VERIFY_KEY; }
-"--AUTO_EJECT_HOSTS"           { yyextra->begin= yytext; return AUTO_EJECT_HOSTS; }
-"--AUTO-EJECT_HOSTS"           { yyextra->begin= yytext; return AUTO_EJECT_HOSTS; }
-"--BINARY_PROTOCOL"                    { yyextra->begin= yytext; return BINARY_PROTOCOL; }
+"--SOCKET="                          { yyextra->begin= yytext; return SOCKET; }
+
 "--BINARY-PROTOCOL"                    { yyextra->begin= yytext; return BINARY_PROTOCOL; }
-"--BUFFER_REQUESTS"                    { yyextra->begin= yytext; return BUFFER_REQUESTS; }
 "--BUFFER-REQUESTS"                    { yyextra->begin= yytext; return BUFFER_REQUESTS; }
-"--CONFIGURE_FILE="                    { yyextra->begin= yytext; return CONFIGURE_FILE; }
 "--CONFIGURE-FILE="                    { yyextra->begin= yytext; return CONFIGURE_FILE; }
-"--CONNECT_TIMEOUT="                   { yyextra->begin= yytext; return CONNECT_TIMEOUT; }
 "--CONNECT-TIMEOUT="                   { yyextra->begin= yytext; return CONNECT_TIMEOUT; }
 "--DISTRIBUTION="                      { yyextra->begin= yytext; return DISTRIBUTION; }
+"--HASH-WITH-NAMESPACE"                { yyextra->begin= yytext; return HASH_WITH_NAMESPACE; }
 "--HASH="                              { yyextra->begin= yytext; return HASH; }
-"--HASH_WITH_PREFIX_KEY"               { yyextra->begin= yytext; return HASH_WITH_PREFIX_KEY; }
-"--HASH-WITH-PREFIX_KEY"               { yyextra->begin= yytext; return HASH_WITH_PREFIX_KEY; }
-"--IO_BYTES_WATERMARK="                { yyextra->begin= yytext; return IO_BYTES_WATERMARK; }
 "--IO-BYTES-WATERMARK="                { yyextra->begin= yytext; return IO_BYTES_WATERMARK; }
-"--IO_KEY_PREFETCH="                   { yyextra->begin= yytext; return IO_KEY_PREFETCH; }
 "--IO-KEY-PREFETCH="                   { yyextra->begin= yytext; return IO_KEY_PREFETCH; }
-"--IO_MSG_WATERMARK="          { yyextra->begin= yytext; return IO_MSG_WATERMARK; }
 "--IO-MSG-WATERMARK="          { yyextra->begin= yytext; return IO_MSG_WATERMARK; }
 "--NOREPLY"                         { yyextra->begin= yytext; return NOREPLY; }
-"--NUMBER_OF_REPLICAS="                { yyextra->begin= yytext; return NUMBER_OF_REPLICAS; }
 "--NUMBER-OF-REPLICAS="                { yyextra->begin= yytext; return NUMBER_OF_REPLICAS; }
-"--POLL_TIMEOUT="                      { yyextra->begin= yytext; return POLL_TIMEOUT; }
 "--POLL-TIMEOUT="                      { yyextra->begin= yytext; return POLL_TIMEOUT; }
-"--RANDOMIZE_REPLICA_READ"             { yyextra->begin= yytext; return RANDOMIZE_REPLICA_READ; }
 "--RANDOMIZE-REPLICA-READ"             { yyextra->begin= yytext; return RANDOMIZE_REPLICA_READ; }
-"--RCV_TIMEOUT="                       { yyextra->begin= yytext; return RCV_TIMEOUT; }
 "--RCV-TIMEOUT="                       { yyextra->begin= yytext; return RCV_TIMEOUT; }
-"--RETRY_TIMEOUT="                     { yyextra->begin= yytext; return RETRY_TIMEOUT; }
+"--REMOVE-FAILED-SERVERS="                     { yyextra->begin= yytext; return REMOVE_FAILED_SERVERS; }
 "--RETRY-TIMEOUT="                     { yyextra->begin= yytext; return RETRY_TIMEOUT; }
-"--SERVER_FAILURE_LIMIT="              { yyextra->begin= yytext; return SERVER_FAILURE_LIMIT; }
-"--SERVER-FAILURE-LIMIT="              { yyextra->begin= yytext; return SERVER_FAILURE_LIMIT; }
-"--SND_TIMEOUT="                       { yyextra->begin= yytext; return SND_TIMEOUT; }
 "--SND-TIMEOUT="                       { yyextra->begin= yytext; return SND_TIMEOUT; }
-"--SOCKET_RECV_SIZE="          { yyextra->begin= yytext; return SOCKET_RECV_SIZE; }
 "--SOCKET-RECV-SIZE="          { yyextra->begin= yytext; return SOCKET_RECV_SIZE; }
-"--SOCKET_SEND_SIZE="          { yyextra->begin= yytext; return SOCKET_SEND_SIZE; }
 "--SOCKET-SEND-SIZE="          { yyextra->begin= yytext; return SOCKET_SEND_SIZE; }
-"--SORT_HOSTS"                 { yyextra->begin= yytext; return SORT_HOSTS; }
 "--SORT-HOSTS"                 { yyextra->begin= yytext; return SORT_HOSTS; }
-"--SUPPORT_CAS"                        { yyextra->begin= yytext; return SUPPORT_CAS; }
 "--SUPPORT-CAS"                        { yyextra->begin= yytext; return SUPPORT_CAS; }
-"--TCP_NODELAY"                        { yyextra->begin= yytext; return _TCP_NODELAY; }
-"--TCP-NODELAY"                        { yyextra->begin= yytext; return _TCP_NODELAY; }
-"--TCP_KEEPALIVE"                      { yyextra->begin= yytext; return _TCP_KEEPALIVE; }
 "--TCP-KEEPALIVE"                      { yyextra->begin= yytext; return _TCP_KEEPALIVE; }
-"--TCP_KEEPIDLE"                       { yyextra->begin= yytext; return _TCP_KEEPIDLE; }
 "--TCP-KEEPIDLE"                       { yyextra->begin= yytext; return _TCP_KEEPIDLE; }
-"--USER_DATA"                  { yyextra->begin= yytext; return USER_DATA; }
-"--USER-DATA"                  { yyextra->begin= yytext; return USER_DATA; }
-"--USE_UDP"                            { yyextra->begin= yytext; return USE_UDP; }
+"--TCP-NODELAY"                        { yyextra->begin= yytext; return _TCP_NODELAY; }
 "--USE-UDP"                            { yyextra->begin= yytext; return USE_UDP; }
+"--USER-DATA"                  { yyextra->begin= yytext; return USER_DATA; }
+"--VERIFY-KEY"                      { yyextra->begin= yytext; return VERIFY_KEY; }
+
+"--POOL-MIN="                          { yyextra->begin= yytext; return POOL_MIN; }
+"--POOL-MAX="                          { yyextra->begin= yytext; return POOL_MAX; }
 
-"--PREFIX-KEY="                                { yyextra->begin= yytext; return PREFIX_KEY; }
-"--PREFIX_KEY="                                { yyextra->begin= yytext; return PREFIX_KEY; }
+"--NAMESPACE="                         { yyextra->begin= yytext; return NAMESPACE; }
 
 INCLUDE           { yyextra->begin= yytext; return INCLUDE; }
 RESET           { yyextra->begin= yytext; return RESET; }
@@ -184,7 +162,7 @@ JENKINS                     { return JENKINS; }
       yylval->server.weight= 1;
       yylval->server.c_str= yyextra->set_hostname(yytext, yyleng);
       if (yylval->server.c_str)
-        yylval->server.length= yyleng;
+        yylval->server.size= yyleng;
       return IPADDRESS;
     }
 
@@ -195,20 +173,21 @@ JENKINS                   { return JENKINS; }
         yylval->server.weight= 1;
         yylval->server.c_str= yyextra->set_hostname(yytext, yyleng);
         if (yylval->server.c_str)
-          yylval->server.length= yyleng;
+          yylval->server.size= yyleng;
 
         return HOSTNAME;
       }
 
       yylval->string.c_str = yytext;
-      yylval->string.length = yyleng;
+      yylval->string.size = yyleng;
 
       return STRING;
     }
 
-(\".*\") {
-      yylval->string.c_str = yytext;
-      yylval->string.length = yyleng;
+L?\"(\\.|[^\\"])*\" {
+      yyget_text(yyscanner)[yyleng -1]= 0;
+      yylval->string.c_str= yytext +1;
+      yylval->string.size= yyleng -2;
       return QUOTED_STRING;
     }