mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 04:20:05 +00:00 
			
		
		
		
	Finish migrating std::regex to RE2
This commit is contained in:
		
							parent
							
								
									2757c51828
								
							
						
					
					
						commit
						2bd5ec8705
					
				
					 4 changed files with 26 additions and 33 deletions
				
			
		|  | @ -2,10 +2,10 @@ | |||
| #include <scwx/util/logger.hpp> | ||||
| 
 | ||||
| #include <mutex> | ||||
| #include <regex> | ||||
| 
 | ||||
| #include <boost/json.hpp> | ||||
| #include <cpr/cpr.h> | ||||
| #include <re2/re2.h> | ||||
| 
 | ||||
| namespace scwx | ||||
| { | ||||
|  | @ -61,16 +61,10 @@ std::string UpdateManager::latest_version() const | |||
| std::string | ||||
| UpdateManager::Impl::GetVersionString(const std::string& releaseName) | ||||
| { | ||||
|    static const std::regex re {"\\d+\\.\\d+\\.\\d+"}; | ||||
|    std::string             versionString {}; | ||||
|    std::smatch             m; | ||||
|    static constexpr LazyRE2 re = {"(\\d+\\.\\d+\\.\\d+)"}; | ||||
|    std::string              versionString {}; | ||||
| 
 | ||||
|    std::regex_search(releaseName, m, re); | ||||
| 
 | ||||
|    if (!m.empty()) | ||||
|    { | ||||
|       versionString = m[0].str(); | ||||
|    } | ||||
|    RE2::PartialMatch(releaseName, *re, &versionString); | ||||
| 
 | ||||
|    return versionString; | ||||
| } | ||||
|  |  | |||
|  | @ -23,7 +23,6 @@ | |||
| #include <scwx/util/logger.hpp> | ||||
| #include <scwx/util/time.hpp> | ||||
| 
 | ||||
| #include <regex> | ||||
| #include <set> | ||||
| 
 | ||||
| #include <backends/imgui_impl_opengl3.h> | ||||
|  | @ -33,6 +32,7 @@ | |||
| #include <boost/uuid/random_generator.hpp> | ||||
| #include <fmt/format.h> | ||||
| #include <imgui.h> | ||||
| #include <re2/re2.h> | ||||
| #include <QApplication> | ||||
| #include <QColor> | ||||
| #include <QDebug> | ||||
|  | @ -769,14 +769,14 @@ std::string MapWidgetImpl::FindMapSymbologyLayer() | |||
|       const std::string layer = qlayer.toStdString(); | ||||
| 
 | ||||
|       // Draw below layers defined in map style
 | ||||
|       auto it = std::find_if( | ||||
|          currentStyle_->drawBelow_.cbegin(), | ||||
|          currentStyle_->drawBelow_.cend(), | ||||
|          [&layer](const std::string& styleLayer) -> bool | ||||
|          { | ||||
|             std::regex re {styleLayer, std::regex_constants::icase}; | ||||
|             return std::regex_match(layer, re); | ||||
|          }); | ||||
|       auto it = std::find_if(currentStyle_->drawBelow_.cbegin(), | ||||
|                              currentStyle_->drawBelow_.cend(), | ||||
|                              [&layer](const std::string& styleLayer) -> bool | ||||
|                              { | ||||
|                                 // Perform case-insensitive matching
 | ||||
|                                 RE2 re {"(?i)" + styleLayer}; | ||||
|                                 return RE2::FullMatch(layer, re); | ||||
|                              }); | ||||
| 
 | ||||
|       if (it != currentStyle_->drawBelow_.cend()) | ||||
|       { | ||||
|  |  | |||
|  | @ -2,10 +2,9 @@ | |||
| #include <scwx/qt/settings/settings_variable.hpp> | ||||
| #include <scwx/qt/util/color.hpp> | ||||
| 
 | ||||
| #include <regex> | ||||
| 
 | ||||
| #include <boost/gil.hpp> | ||||
| #include <fmt/format.h> | ||||
| #include <re2/re2.h> | ||||
| 
 | ||||
| namespace scwx | ||||
| { | ||||
|  | @ -134,8 +133,8 @@ public: | |||
| 
 | ||||
| bool PaletteSettings::Impl::ValidateColor(const std::string& value) | ||||
| { | ||||
|    static const std::regex re {"#[0-9A-Za-z]{8}"}; | ||||
|    return std::regex_match(value, re); | ||||
|    static constexpr LazyRE2 re = {"#[0-9A-Fa-f]{8}"}; | ||||
|    return RE2::FullMatch(value, *re); | ||||
| } | ||||
| 
 | ||||
| PaletteSettings::PaletteSettings() : | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Dan Paulat
						Dan Paulat