DataMode: use pattern constants v_0
authorFrantišek Kučera <franta-hg@frantovo.cz>
Sun, 23 May 2021 21:32:37 +0200
branchv_0
changeset 7 b8f130c7998e
parent 6 779897b055c6
child 8 fc8b94bccfc5
DataMode: use pattern constants
src/DataMode.h
--- a/src/DataMode.h	Sun May 23 21:28:26 2021 +0200
+++ b/src/DataMode.h	Sun May 23 21:32:37 2021 +0200
@@ -29,6 +29,8 @@
 
 class DataMode : public Mode {
 private:
+	static const std::wregex BOOLEAN_PATTERN;
+	static const std::wregex INTEGER_PATTERN;
 	relpipe::common::type::StringX name;
 	std::vector<relpipe::reader::handlers::AttributeMetadata> attributes;
 	std::vector<relpipe::common::type::StringX> values;
@@ -57,8 +59,8 @@
 		std::vector<bool> integers(attributes.size(), true);
 
 		for (int i = 0, limit = attributes.size(); i < limit; i++) {
-			booleans[i] = matches(i, std::wregex(L"true|false"));
-			integers[i] = matches(i, std::wregex(L"[0-9]+"));
+			booleans[i] = matches(i, BOOLEAN_PATTERN);
+			integers[i] = matches(i, INTEGER_PATTERN);
 		}
 
 		vector<writer::AttributeMetadata> writerMetadata;
@@ -78,6 +80,8 @@
 	}
 };
 
+const std::wregex DataMode::BOOLEAN_PATTERN = std::wregex(L"true|false");
+const std::wregex DataMode::INTEGER_PATTERN = std::wregex(L"[0-9]+");
 
 }
 }