From 8c62eaa99c5e8233c3d0e0489126faf25d8cafc0 Mon Sep 17 00:00:00 2001 From: Dmitri Naumov <github@naumov.de> Date: Mon, 15 Mar 2021 22:14:42 +0100 Subject: [PATCH] [App/IO] Use std::any in csv I/F replacing boost. --- Applications/FileIO/CsvInterface.cpp | 13 ++++++------- Applications/FileIO/CsvInterface.h | 10 ++++------ 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/Applications/FileIO/CsvInterface.cpp b/Applications/FileIO/CsvInterface.cpp index ae2be3afca3..f40eb0ddfea 100644 --- a/Applications/FileIO/CsvInterface.cpp +++ b/Applications/FileIO/CsvInterface.cpp @@ -295,15 +295,15 @@ std::size_t CsvInterface::getVectorSize(std::size_t idx) const { if (_data[idx].type() == typeid(std::vector<std::string>)) { - return boost::any_cast<std::vector<std::string>>(_data[idx]).size(); + return std::any_cast<std::vector<std::string>>(_data[idx]).size(); } if (_data[idx].type() == typeid(std::vector<double>)) { - return boost::any_cast<std::vector<double>>(_data[idx]).size(); + return std::any_cast<std::vector<double>>(_data[idx]).size(); } if (_data[idx].type() == typeid(std::vector<int>)) { - return boost::any_cast<std::vector<int>>(_data[idx]).size(); + return std::any_cast<std::vector<int>>(_data[idx]).size(); } return 0; } @@ -312,17 +312,16 @@ void CsvInterface::writeValue(std::size_t vec_idx, std::size_t in_vec_idx) { if (_data[vec_idx].type() == typeid(std::vector<std::string>)) { - _out << boost::any_cast<std::vector<std::string>>( + _out << std::any_cast<std::vector<std::string>>( _data[vec_idx])[in_vec_idx]; } else if (_data[vec_idx].type() == typeid(std::vector<double>)) { - _out << boost::any_cast<std::vector<double>>( - _data[vec_idx])[in_vec_idx]; + _out << std::any_cast<std::vector<double>>(_data[vec_idx])[in_vec_idx]; } else if (_data[vec_idx].type() == typeid(std::vector<int>)) { - _out << boost::any_cast<std::vector<int>>(_data[vec_idx])[in_vec_idx]; + _out << std::any_cast<std::vector<int>>(_data[vec_idx])[in_vec_idx]; } } diff --git a/Applications/FileIO/CsvInterface.h b/Applications/FileIO/CsvInterface.h index c38b5b2dfeb..2c6ae056794 100644 --- a/Applications/FileIO/CsvInterface.h +++ b/Applications/FileIO/CsvInterface.h @@ -13,9 +13,7 @@ #pragma once -#include <boost/any.hpp> -#include "BaseLib/Logging.h" - +#include <any> #include <array> #include <fstream> #include <iterator> @@ -25,9 +23,9 @@ #include <typeinfo> #include <vector> - -#include "BaseLib/StringTools.h" #include "BaseLib/IO/Writer.h" +#include "BaseLib/Logging.h" +#include "BaseLib/StringTools.h" namespace GeoLib { @@ -253,7 +251,7 @@ private: bool _writeCsvHeader{true}; std::vector<std::string> _vec_names; - std::vector<boost::any> _data; + std::vector<std::any> _data; }; } // namespace FileIO -- GitLab