]> granicus.if.org Git - re2c/commitdiff
Replaced 're2c::Str' with 'std::string'.
authorUlya Trofimovich <skvadrik@gmail.com>
Wed, 13 May 2015 14:24:35 +0000 (15:24 +0100)
committerUlya Trofimovich <skvadrik@gmail.com>
Wed, 13 May 2015 14:24:35 +0000 (15:24 +0100)
There's no point in using self-invented strings if one always
converts them to 'std::string' before actually using them.

re2c/bootstrap/parser.cc
re2c/src/parse/parser.ypp
re2c/src/parse/scanner.cc
re2c/src/parse/scanner.h

index 8182065f3e098f6338a6baa6926baff4fce8d67c..24e3d247422dfa7be73b80779699c73a04d1d4f5 100644 (file)
@@ -1638,7 +1638,7 @@ yyreduce:
 /* Line 1464 of yacc.c  */
 #line 216 "../src/parse/parser.ypp"
     {
-                       in->config(*(yyvsp[(1) - (4)].str), *(yyvsp[(3) - (4)].str));
+                       in->config((yyvsp[(1) - (4)].str)->to_string (), *(yyvsp[(3) - (4)].str));
                        delete (yyvsp[(1) - (4)].str);
                        delete (yyvsp[(3) - (4)].str);
                ;}
@@ -1649,7 +1649,7 @@ yyreduce:
 /* Line 1464 of yacc.c  */
 #line 222 "../src/parse/parser.ypp"
     {
-                       in->config(*(yyvsp[(1) - (4)].str), (yyvsp[(3) - (4)].number));
+                       in->config((yyvsp[(1) - (4)].str)->to_string (), (yyvsp[(3) - (4)].number));
                        delete (yyvsp[(1) - (4)].str);
                ;}
     break;
index 36b75c565a7919c7514ae920886660324298f5c4..c648a24336ce97018e2e6c874eeae8f8c6e48434 100644 (file)
@@ -214,13 +214,13 @@ decl:
                }
        |       CONFIG '=' VALUE ';'
                {
-                       in->config(*$1, *$3);
+                       in->config($1->to_string (), *$3);
                        delete $1;
                        delete $3;
                }
        |       CONFIG '=' NUMBER ';'
                {
-                       in->config(*$1, $3);
+                       in->config($1->to_string (), $3);
                        delete $1;
                }
 ;
index 6a1e9757a5c6d35f29b18343763a29626125aafa..e119b33eeb404d42c48dc696263547cf4a3ebcff 100644 (file)
@@ -4,9 +4,9 @@
 
 namespace re2c {
 
-void Scanner::config(const Str& cfg, int num)
+void Scanner::config(const std::string & cfg, int num)
 {
-       if (cfg.to_string() == "indent:top")
+       if (cfg == "indent:top")
        {
                if (num < 0)
                {
@@ -14,40 +14,40 @@ void Scanner::config(const Str& cfg, int num)
                }
                topIndent = num;
        }
-       else if (cfg.to_string() == "yybm:hex")
+       else if (cfg == "yybm:hex")
        {
                yybmHexTable = num != 0;
        }
-       else if (cfg.to_string() == "startlabel")
+       else if (cfg == "startlabel")
        {
                bUseStartLabel = num != 0;
                startLabelName = "";
        }
-       else if (cfg.to_string() == "state:abort")
+       else if (cfg == "state:abort")
        {
                bUseStateAbort = num != 0;
        }
-       else if (cfg.to_string() == "state:nextlabel")
+       else if (cfg == "state:nextlabel")
        {
                bUseStateNext = num != 0;
        }
-       else if (cfg.to_string() == "yyfill:enable")
+       else if (cfg == "yyfill:enable")
        {
                bUseYYFill = num != 0;
        }
-       else if (cfg.to_string() == "yyfill:parameter")
+       else if (cfg == "yyfill:parameter")
        {
                bUseYYFillParam = num != 0;
        }
-       else if (cfg.to_string() == "yyfill:check")
+       else if (cfg == "yyfill:check")
        {
                bUseYYFillCheck = num != 0;
        }
-       else if (cfg.to_string() == "cgoto:threshold")
+       else if (cfg == "cgoto:threshold")
        {
                cGotoThreshold = num;
        }
-       else if (cfg.to_string() == "yych:conversion")
+       else if (cfg == "yych:conversion")
        {
                if (num)
                {
@@ -60,27 +60,27 @@ void Scanner::config(const Str& cfg, int num)
                        yychConversion  = "";
                }
        }
-       else if (cfg.to_string() == "yych:emit")
+       else if (cfg == "yych:emit")
        {
                bEmitYYCh = num != 0;
        }
-       else if (cfg.to_string() == "define:YYFILL:naked")
+       else if (cfg == "define:YYFILL:naked")
        {
                bUseYYFillNaked = num != 0;
        }
-       else if (cfg.to_string() == "define:YYGETCONDITION:naked")
+       else if (cfg == "define:YYGETCONDITION:naked")
        {
                bUseYYGetConditionNaked = num != 0;
        }
-       else if (cfg.to_string() == "define:YYGETSTATE:naked")
+       else if (cfg == "define:YYGETSTATE:naked")
        {
                bUseYYGetStateNaked = num != 0;
        }
-       else if (cfg.to_string() == "define:YYSETSTATE:naked")
+       else if (cfg == "define:YYSETSTATE:naked")
        {
                bUseYYSetStateNaked = num != 0;
        }
-       else if (cfg.to_string() == "flags:e")
+       else if (cfg == "flags:e")
        {
                if (num != 0)
                {
@@ -90,7 +90,7 @@ void Scanner::config(const Str& cfg, int num)
                else
                        encoding.unset(Enc::EBCDIC);
        }
-       else if (cfg.to_string() == "flags:u")
+       else if (cfg == "flags:u")
        {
                if (num != 0)
                {
@@ -100,7 +100,7 @@ void Scanner::config(const Str& cfg, int num)
                else
                        encoding.unset(Enc::UTF32);
        }
-       else if (cfg.to_string() == "flags:w")
+       else if (cfg == "flags:w")
        {
                if (num != 0)
                {
@@ -110,7 +110,7 @@ void Scanner::config(const Str& cfg, int num)
                else
                        encoding.unset(Enc::UCS2);
        }
-       else if (cfg.to_string() == "flags:x")
+       else if (cfg == "flags:x")
        {
                if (num != 0)
                {
@@ -120,7 +120,7 @@ void Scanner::config(const Str& cfg, int num)
                else
                        encoding.unset(Enc::UTF16);
        }
-       else if (cfg.to_string() == "flags:8")
+       else if (cfg == "flags:8")
        {
                if (num != 0)
                {
@@ -132,7 +132,7 @@ void Scanner::config(const Str& cfg, int num)
        }
        else
        {
-               fatalf("unrecognized configuration name '%s' or illegal integer value", cfg.to_string().c_str());
+               fatalf("unrecognized configuration name '%s' or illegal integer value", cfg.c_str());
        }
 }
 
@@ -140,7 +140,7 @@ static std::set<std::string> mapVariableKeys;
 static std::set<std::string> mapDefineKeys;
 static std::set<std::string> mapLabelKeys;
 
-void Scanner::config(const Str& cfg, const Str& val)
+void Scanner::config(const std::string & cfg, const Str & val)
 {
        if (mapDefineKeys.empty())
        {
@@ -186,83 +186,83 @@ void Scanner::config(const Str& cfg, const Str& val)
                strVal = val.to_string();
        }
 
-       if (cfg.to_string() == "indent:string")
+       if (cfg == "indent:string")
        {
                indString = strVal;
        }
-       else if (cfg.to_string() == "startlabel")
+       else if (cfg == "startlabel")
        {
                startLabelName = strVal;
                bUseStartLabel = !startLabelName.empty();
        }
-       else if (cfg.to_string() == "labelprefix")
+       else if (cfg == "labelprefix")
        {
                labelPrefix = strVal;
        }
-       else if (cfg.to_string() == "condprefix")
+       else if (cfg == "condprefix")
        {
                condPrefix = strVal;
        }
-       else if (cfg.to_string() == "condenumprefix")
+       else if (cfg == "condenumprefix")
        {
                condEnumPrefix = strVal;
        }
-       else if (cfg.to_string() == "cond:divider")
+       else if (cfg == "cond:divider")
        {
                condDivider = strVal;
        }
-       else if (cfg.to_string() == "cond:divider@cond")
+       else if (cfg == "cond:divider@cond")
        {
                condDividerParam = strVal;
        }
-       else if (cfg.to_string() == "cond:goto")
+       else if (cfg == "cond:goto")
        {
                condGoto = strVal;
        }
-       else if (cfg.to_string() == "cond:goto@cond")
+       else if (cfg == "cond:goto@cond")
        {
                condGotoParam = strVal;
        }
-       else if (cfg.to_string() == "define:YYFILL@len")
+       else if (cfg == "define:YYFILL@len")
        {
                yyFillLength = strVal;
                bUseYYFillParam = false;
        }
-       else if (cfg.to_string() == "define:YYSETCONDITION@cond")
+       else if (cfg == "define:YYSETCONDITION@cond")
        {
                yySetConditionParam = strVal;
                bUseYYSetConditionParam = false;
        }
-       else if (cfg.to_string() == "define:YYSETSTATE@state")
+       else if (cfg == "define:YYSETSTATE@state")
        {
                yySetStateParam = strVal;
                bUseYYSetStateParam = false;
        }
-       else if (mapVariableKeys.find(cfg.to_string()) != mapVariableKeys.end())
+       else if (mapVariableKeys.find(cfg) != mapVariableKeys.end())
        {
-               if (!mapCodeName.insert(std::make_pair(cfg.to_string().substr(sizeof("variable:") - 1), strVal)).second)
+               if (!mapCodeName.insert(std::make_pair(cfg.substr(sizeof("variable:") - 1), strVal)).second)
                {
-                       fatalf("variable '%s' already being used and cannot be changed", cfg.to_string().c_str());
+                       fatalf("variable '%s' already being used and cannot be changed", cfg.c_str());
                }
        }
-       else if (mapDefineKeys.find(cfg.to_string()) != mapDefineKeys.end())
+       else if (mapDefineKeys.find(cfg) != mapDefineKeys.end())
        {
-               if (!mapCodeName.insert(std::make_pair(cfg.to_string().substr(sizeof("define:") - 1), strVal)).second)
+               if (!mapCodeName.insert(std::make_pair(cfg.substr(sizeof("define:") - 1), strVal)).second)
                {
-                       fatalf("define '%s' already being used and cannot be changed", cfg.to_string().c_str());
+                       fatalf("define '%s' already being used and cannot be changed", cfg.c_str());
                }
        }
-       else if (mapLabelKeys.find(cfg.to_string()) != mapLabelKeys.end())
+       else if (mapLabelKeys.find(cfg) != mapLabelKeys.end())
        {
-               if (!mapCodeName.insert(std::make_pair(cfg.to_string().substr(sizeof("label:") - 1), strVal)).second)
+               if (!mapCodeName.insert(std::make_pair(cfg.substr(sizeof("label:") - 1), strVal)).second)
                {
-                       fatalf("label '%s' already being used and cannot be changed", cfg.to_string().c_str());
+                       fatalf("label '%s' already being used and cannot be changed", cfg.c_str());
                }
        }
        else
        {
                std::string msg = "unrecognized configuration name '";
-               msg += cfg.to_string();
+               msg += cfg;
                msg += "' or illegal string value";
                fatal(msg.c_str());
        }
index 7df36a8e2203195f4e53ebbf36e09f0a4f78aac4..76e078f773f62b094b311f3732f9f068f7f4df22 100644 (file)
@@ -79,8 +79,8 @@ public:
        void fatal(const char*) const;
        void fatal(uint32_t, const char*) const;
 
-       void config(const Str&, int);
-       void config(const Str&, const Str&);
+       void config(const std::string &, int);
+       void config(const std::string &, const Str &);
 
        void check_token_length(char *pos, uint32_t len) const;
        SubStr token() const;