From cd264faa70b4d88483bcab3f01f0240e1c9ec4df Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 10 Jan 2021 23:51:20 +0100
Subject: [PATCH 01/20] add buffer to converter

---
 include/ss/converter.hpp | 143 ++++++++++++++++++++++++++++++++++++---
 include/ss/parser.hpp    |  53 ++++++++++-----
 test/makefile            |   6 +-
 test/test_converter      | Bin 0 -> 900216 bytes
 test/test_converter.cpp  | 118 +++++++++++++++++++++++++++++++-
 test/test_parser.cpp     |   4 +-
 6 files changed, 290 insertions(+), 34 deletions(-)
 create mode 100755 test/test_converter

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index 4c6c0c9..9adc536 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -1,5 +1,17 @@
 #pragma once
 
+// TODO remove
+#include <iostream>
+#ifndef DBG
+void log(const std::string& log) {
+    std::cout << log << std::endl;
+}
+#else
+void log(const std::string&) {
+}
+#endif
+//
+//
 #include "extract.hpp"
 #include "function_traits.hpp"
 #include "restrictions.hpp"
@@ -8,6 +20,10 @@
 #include <type_traits>
 #include <vector>
 
+constexpr auto space = '_';
+constexpr auto escaping = true;
+constexpr auto quote = '"';
+
 namespace ss {
 INIT_HAS_METHOD(tied);
 INIT_HAS_METHOD(ss_valid);
@@ -21,7 +37,7 @@ INIT_HAS_METHOD(error);
 // eg. no_validator_tup_t<int, ss::nx<char, 'A', 'B'>> <=> std::tuple<int, char>
 // where ss::nx<char, 'A', 'B'> is a validator '(n)one e(x)cept' which
 // checks if the returned character is either 'A' or 'B', returns error if not
-// additionaly if one element is left in the pack, it will be unwraped from
+// additionally if one element is left in the pack, it will be unwrapped from
 // the tuple eg. no_void_validator_tup_t<int> <=> int instead of std::tuple<int>
 template <typename T, typename U = void>
 struct no_validator;
@@ -139,6 +155,12 @@ public:
         return to_object<T>(convert<Ts...>(elems));
     }
 
+    // same as above, but uses cached split line
+    template <typename T, typename... Ts>
+    T convert_object() {
+        return to_object<T>(convert<Ts...>());
+    }
+
     // parses already split line, returns either a tuple of objects with
     // parsed values (returns raw element (no tuple) if Ts is empty), or if
     // one argument is given which is a class which has a tied
@@ -162,6 +184,12 @@ public:
         }
     }
 
+    // same as above, but uses cached split line
+    template <typename T, typename... Ts>
+    no_void_validator_tup_t<T, Ts...> convert() {
+        return convert<T, Ts...>(input_);
+    }
+
     bool valid() const {
         return (error_mode_ == error_mode::error_string) ? string_error_.empty()
                                                          : bool_error_ == false;
@@ -176,7 +204,7 @@ public:
     }
 
     // 'splits' string by given delimiter, returns vector of pairs which
-    // contain the beginings and the ends of each column of the string
+    // contain the beginnings and the ends of each column of the string
     const split_input& split(const char* const line,
                              const std::string& delim = "") {
         input_.clear();
@@ -215,6 +243,24 @@ private:
         return error;
     }
 
+    void set_error_invalid_quotation() {
+        if (error_mode_ == error_mode::error_string) {
+            string_error_.clear();
+            string_error_.append("invalid quotation");
+        } else {
+            bool_error_ = true;
+        }
+    }
+
+    void set_error_unterminated_quote() {
+        if (error_mode_ == error_mode::error_string) {
+            string_error_.clear();
+            string_error_.append("unterminated quote");
+        } else {
+            bool_error_ = true;
+        }
+    }
+
     void set_error_invalid_conversion(const string_range msg, size_t pos) {
         if (error_mode_ == error_mode::error_string) {
             string_error_.clear();
@@ -277,30 +323,107 @@ private:
     template <typename Delim>
     const split_input& split_impl(const char* const line, Delim delim,
                                   size_t delim_size = 1) {
-        auto range = substring(line, delim);
+        auto [range, begin] = substring(line, delim);
         input_.push_back(range);
         while (range.second[0] != '\0') {
-            range = substring(range.second + delim_size, delim);
+            if constexpr (quote != '\0') {
+                if (*begin == quote) {
+                    ++begin;
+                }
+                if (*begin == '\0') {
+                    break;
+                }
+            }
+
+            std::tie(range, begin) = substring(begin + delim_size, delim);
+            log("-> " + std::string{range.first, range.second});
             input_.push_back(range);
         }
         return input_;
     }
 
-    bool no_match(const char* end, char delim) const {
-        return *end != delim;
+    size_t match(const char* begin, char delim) const {
+        const char* p = begin;
+        if constexpr (space == '\0') {
+            if (*p == delim) {
+                return 1;
+            }
+        } else {
+            while (*p == space) {
+                ++p;
+            }
+            if (*p == '\0') {
+                return p - begin;
+            }
+            if (*p != delim) {
+                return 0;
+            }
+            do
+                ++p;
+            while (*p == space);
+            return p - begin;
+        }
     }
 
-    bool no_match(const char* end, const std::string& delim) const {
+    size_t match(const char* end, const std::string& delim) const {
+        // TODO
+        log("ahamm");
         return strncmp(end, delim.c_str(), delim.size()) != 0;
     }
 
     template <typename Delim>
-    string_range substring(const char* const begin, Delim delim) const {
+    std::tuple<string_range, const char*> substring(const char* begin,
+                                                    Delim delim) {
         const char* end;
-        for (end = begin; *end != '\0' && no_match(end, delim); ++end)
+        const char* i;
+        for (i = begin; *i != '\0'; ++i)
             ;
+        log(">> " + std::string{begin, i});
+        if constexpr (quote != '\0') {
+            if (*begin == quote) {
+                ++begin;
 
-        return string_range{begin, end};
+                for (end = begin; true; ++end) {
+
+                    if (*end == '\0') {
+                        log("error");
+                        set_error_unterminated_quote();
+                        return {string_range{begin, end}, end};
+                    }
+
+                    if constexpr (escaping) {
+                        if (end[-1] == '\\') {
+                            continue;
+                        }
+                    }
+
+                    if (*end == quote) {
+                        break;
+                    }
+                }
+
+                // end is not \0
+                size_t to_ignore = match(end + 1, delim);
+                log(std::to_string(to_ignore));
+                if (to_ignore != 0) {
+                    return {string_range{begin, end}, end + to_ignore};
+                }
+
+                log("error");
+                set_error_invalid_quotation();
+                return {string_range{begin, end}, end};
+            }
+        }
+
+        for (end = begin; *end != '\0'; ++end) {
+            size_t to_ignore = match(end, delim);
+            log(std::to_string(to_ignore));
+            if (to_ignore != 0) {
+                return {string_range{begin, end}, end + to_ignore};
+            }
+        }
+
+        return {string_range{begin, end}, end};
     }
 
     ////////////////
diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index 20385d5..adb35c0 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -3,9 +3,9 @@
 #include "converter.hpp"
 #include "extract.hpp"
 #include "restrictions.hpp"
+#include <cstdlib>
 #include <cstring>
 #include <optional>
-#include <cstdlib>
 #include <string>
 #include <vector>
 
@@ -39,7 +39,7 @@ public:
 
     void set_error_mode(error_mode mode) {
         error_mode_ = mode;
-        converter_.set_error_mode(mode);
+        buff_.set_error_mode(mode);
     }
 
     const std::string& error_msg() const {
@@ -68,10 +68,9 @@ public:
             return {};
         }
 
-        split_input_ = converter_.split(buff_.get(), delim_);
-        auto value = converter_.convert<T, Ts...>(split_input_);
+        auto value = buff_.get_converter().convert<T, Ts...>();
 
-        if (!converter_.valid()) {
+        if (!buff_.get_converter().valid()) {
             set_error_invalid_conversion();
         }
 
@@ -134,7 +133,7 @@ public:
         composite<Ts..., T> composite_with(T&& new_value) {
             auto merged_values =
                 std::tuple_cat(std::move(values_),
-                               std::tuple{parser_.valid()
+                               std::tuple<T>{parser_.valid()
                                               ? std::forward<T>(new_value)
                                               : std::nullopt});
             return {std::move(merged_values), parser_};
@@ -160,8 +159,8 @@ public:
         no_void_validator_tup_t<U, Us...> try_same() {
             parser_.clear_error();
             auto value =
-                parser_.converter_.convert<U, Us...>(parser_.split_input_);
-            if (!parser_.converter_.valid()) {
+                parser_.buff_.get_converter().template convert<U, Us...>();
+            if (!parser_.buff_.get_converter().valid()) {
                 parser_.set_error_invalid_conversion();
             }
             return value;
@@ -249,37 +248,57 @@ private:
 
     class buffer {
         char* buffer_{nullptr};
-        char* new_buffer_{nullptr};
+        char* next_line_buffer_{nullptr};
+
+        converter converter_;
+        converter next_line_converter_;
+
         size_t size_{0};
+        const std::string& delim_;
 
     public:
+        buffer(const std::string& delimiter) : delim_{delimiter} {
+        }
+
         ~buffer() {
             free(buffer_);
-            free(new_buffer_);
+            free(next_line_buffer_);
         }
 
         bool read(FILE* file) {
-            ssize_t size = getline(&new_buffer_, &size_, file);
+            ssize_t size = getline(&next_line_buffer_, &size_, file);
             size_t string_end = size - 1;
 
             if (size == -1) {
                 return false;
             }
 
-            if (size >= 2 && new_buffer_[size - 2] == '\r') {
+            if (size >= 2 && next_line_buffer_[size - 2] == '\r') {
                 string_end--;
             }
 
-            new_buffer_[string_end] = '\0';
+            next_line_buffer_[string_end] = '\0';
+            next_line_converter_.split(next_line_buffer_, delim_);
+
             return true;
         }
 
+        void set_error_mode(error_mode mode) {
+            converter_.set_error_mode(mode);
+            next_line_converter_.set_error_mode(mode);
+        }
+
+        converter& get_converter() {
+            return converter_;
+        }
+
         const char* get() const {
             return buffer_;
         }
 
         void update() {
-            std::swap(buffer_, new_buffer_);
+            std::swap(buffer_, next_line_buffer_);
+            std::swap(converter_, next_line_converter_);
         }
     };
 
@@ -324,7 +343,7 @@ private:
                 .append(" ")
                 .append(std::to_string(line_number_))
                 .append(": ")
-                .append(converter_.error_msg())
+                .append(buff_.get_converter().error_msg())
                 .append(": \"")
                 .append(buff_.get())
                 .append("\"");
@@ -342,10 +361,8 @@ private:
     std::string string_error_;
     bool bool_error_{false};
     error_mode error_mode_{error_mode::error_bool};
-    converter converter_;
-    converter::split_input split_input_;
     FILE* file_{nullptr};
-    buffer buff_;
+    buffer buff_{delim_};
     size_t line_number_{0};
     bool eof_{false};
 };
diff --git a/test/makefile b/test/makefile
index 9bbe159..2652fca 100644
--- a/test/makefile
+++ b/test/makefile
@@ -1,6 +1,6 @@
-CXX=clang++
-CXXFLAGS=-Wall -Wextra -std=c++17 -lstdc++fs
-TESTS=test_parser test_converter test_extractions
+CXX=clang++-9
+CXXFLAGS=-Wall -Wextra -std=c++17 -O0 -lstdc++fs
+TESTS=test_converter
 
 all: $(TESTS)
 
diff --git a/test/test_converter b/test/test_converter
new file mode 100755
index 0000000000000000000000000000000000000000..a24c1b7390ef46e18a95889e3ceb806f6b43a1d6
GIT binary patch
literal 900216
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

literal 0
HcmV?d00001

diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index 82dc020..cf469fb 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -1,8 +1,123 @@
+#include <iostream>
 #define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
 #include "../include/ss/converter.hpp"
 #include "doctest.h"
 #include <algorithm>
 
+/* TODO
+TEST_CASE("testing quoting with escaping") {
+    std::vector<std::string> values{"10",          "he\\\"llo", "\\\"",
+                                    "\\\"a,a\\\"", "3.33",      "a\\\""};
+
+    // with quote
+    ss::converter c;
+    for (size_t i = 0; i < values.size() * values.size(); ++i) {
+        std::string input1;
+        std::string input2;
+        for (size_t j = 0; j < values.size(); ++j) {
+            if (i & (1 << j) && j != 2 && j != 3) {
+                input1.append(values[j]);
+                input2.append(values.at(values.size() - 1 - j));
+            } else {
+                input1.append("\"" + values[j] + "\"");
+                input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
+            }
+            input1.push_back(',');
+            input2.push_back(',');
+        }
+        input1.pop_back();
+        input2.pop_back();
+        input1.append("\0\"");
+        input2.append("\0\"");
+
+        auto tup1 = c.convert<int, std::string, std::string, std::string,
+                              double, std::string>(input1.c_str(), ",");
+        if (!c.valid()) {
+            FAIL("invalid: " + input1);
+        } else {
+            auto [a, b, c, d, e, f] = tup1;
+            CHECK(a == 10);
+            CHECK(b == "he\"llo");
+            CHECK(c == "\"");
+            CHECK(d == "\"a,a\"");
+            CHECK(e == 3.33);
+            CHECK(f == "a\"");
+            std::cout << a << ' ' << b << ' ' << c << ' ' << d << ' ' << e
+                      << ' ' << f << std::endl;
+            CHECK(tup1 ==
+                  std::make_tuple(10, "he\"llo", "\"", "\"a,a\"", 3.33, "a\""));
+        }
+
+        auto tup2 = c.convert<std::string, double, std::string, std::string,
+                              std::string, int>(input2.c_str(), ",");
+        if (!c.valid()) {
+            FAIL("invalid: " + input2);
+        } else {
+            CHECK(tup2 ==
+                  std::make_tuple("a\"", 3.33, "\"a,a\"", "\"", "he\"llo", 10));
+        }
+    }
+}
+*/
+
+TEST_CASE("testing quoting without escaping") {
+    std::vector<std::string> values{"10", "hello", ",", "a,a", "3.33", "a"};
+
+    // with quote
+    ss::converter c;
+    for (size_t i = 0; i < values.size() * values.size(); ++i) {
+        std::string input1;
+        std::string input2;
+        for (size_t j = 0; j < values.size(); ++j) {
+            if (i & (1 << j) && j != 2 && j != 3) {
+                input1.append(values[j]);
+                input2.append(values.at(values.size() - 1 - j));
+            } else {
+                input1.append("\"" + values[j] + "\"");
+                input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
+            }
+            input1.append("__");
+            input1.push_back(',');
+            input1.append("__");
+            input2.push_back(',');
+        }
+        input1.pop_back();
+        input1.pop_back();
+        input1.pop_back();
+        input2.pop_back();
+        input1.append("\0\"");
+        input2.append("\0\"");
+
+        auto tup1 = c.convert<int, std::string, std::string, std::string,
+                              double, char>(input1.c_str(), ",");
+        if (!c.valid()) {
+            FAIL("invalid: " + input1);
+        } else {
+            auto [a, b, c, d, e, f] = tup1;
+            CHECK(a == 10);
+            CHECK(b == "hello");
+            CHECK(c == ",");
+            CHECK(d == "a,a");
+            CHECK(e == 3.33);
+            CHECK(f == 'a');
+        }
+
+        auto tup2 = c.convert<char, double, std::string, std::string,
+                              std::string, int>(input2.c_str(), ",");
+        if (!c.valid()) {
+            FAIL("invalid: " + input2);
+        } else {
+            auto [f, e, d, c, b, a] = tup2;
+            CHECK(a == 10);
+            CHECK(b == "hello");
+            CHECK(c == ",");
+            CHECK(d == "a,a");
+            CHECK(e == 3.33);
+            CHECK(f == 'a');
+        }
+    }
+}
+
 TEST_CASE("testing split") {
     ss::converter c;
     for (const auto& [s, expected, delim] :
@@ -48,7 +163,8 @@ TEST_CASE("testing valid conversions") {
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<void, int, void>("junk 5 junk", " ");
+        // TODO make \t -> ' '
+        auto tup = c.convert<void, int, void>("junk\t5\tjunk", "\t");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
diff --git a/test/test_parser.cpp b/test/test_parser.cpp
index 4f87622..341a453 100644
--- a/test/test_parser.cpp
+++ b/test/test_parser.cpp
@@ -481,8 +481,8 @@ TEST_CASE("testing the moving of parsed values") {
 TEST_CASE("testing the moving of parsed composite values") {
     // to compile is enough
     return;
-    ss::parser* p;
-    p->try_next<my_string, my_string, my_string>()
+    ss::parser p{"", ""};
+    p.try_next<my_string, my_string, my_string>()
         .or_else<my_string, my_string, my_string, my_string>([](auto&&) {})
         .or_else<my_string>([](auto&) {})
         .or_else<xyz>([](auto&&) {})

From 69d6df12be27ce5723f38c7f1446532d7d7a0ae9 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 17 Jan 2021 00:46:05 +0100
Subject: [PATCH 02/20] add splitter, update converter and parser, update unit
 tests

---
 include/ss/converter.hpp | 511 +++++++++++++++++++++++++++------------
 include/ss/parser.hpp    |   6 +-
 test/makefile            |   6 +-
 test/test_converter      | Bin 900216 -> 0 bytes
 test/test_converter.cpp  | 227 ++++++++---------
 test/test_parser.cpp     |   1 +
 6 files changed, 478 insertions(+), 273 deletions(-)
 delete mode 100755 test/test_converter

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index 9adc536..f2e0433 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -1,17 +1,4 @@
 #pragma once
-
-// TODO remove
-#include <iostream>
-#ifndef DBG
-void log(const std::string& log) {
-    std::cout << log << std::endl;
-}
-#else
-void log(const std::string&) {
-}
-#endif
-//
-//
 #include "extract.hpp"
 #include "function_traits.hpp"
 #include "restrictions.hpp"
@@ -20,10 +7,6 @@ void log(const std::string&) {
 #include <type_traits>
 #include <vector>
 
-constexpr auto space = '_';
-constexpr auto escaping = true;
-constexpr auto quote = '"';
-
 namespace ss {
 INIT_HAS_METHOD(tied);
 INIT_HAS_METHOD(ss_valid);
@@ -122,29 +105,368 @@ constexpr bool tied_class_v = tied_class<Ts...>::value;
 // the error can be set inside a string, or a bool
 enum class error_mode { error_string, error_bool };
 
+////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////////////////////
+template <char... Cs>
+struct matcher {
+private:
+    template <char X, char... Xs>
+    static bool match_impl(char c) {
+        if constexpr (sizeof...(Xs) != 0) {
+            return (c == X) || match_impl<Xs...>(c);
+        }
+        return (c == X);
+    }
+
+public:
+    static bool match(char c) {
+        return match_impl<Cs...>(c);
+    }
+    constexpr static bool enabled = true;
+};
+
+template <>
+class matcher<'\0'> {
+public:
+    constexpr static bool enabled = false;
+    static bool match(char c) = delete;
+};
+
+////////////////
+// is instance of
+////////////////
+
+template <typename T, template <char...> class Template>
+struct is_instance_of_char {
+    constexpr static bool value = false;
+};
+
+template <char... Ts, template <char...> class Template>
+struct is_instance_of_char<Template<Ts...>, Template> {
+    constexpr static bool value = true;
+};
+
+///////////////////////////////////////////////////
+
+template <char... Cs>
+struct quote : matcher<Cs...> {};
+
+template <char... Cs>
+struct trim : matcher<Cs...> {};
+
+template <char... Cs>
+struct escape : matcher<Cs...> {};
+
+/////////////////////////////////////////////////
+// -> type traits
+template <bool B, typename T, typename U>
+struct if_then_else;
+
+template <typename T, typename U>
+struct if_then_else<true, T, U> {
+    using type = T;
+};
+
+template <typename T, typename U>
+struct if_then_else<false, T, U> {
+    using type = U;
+};
+
+//////////////////////////////////////////////
+template <template <char...> class Matcher, typename... Ts>
+struct get_matcher;
+
+template <template <char...> class Matcher, typename T, typename... Ts>
+struct get_matcher<Matcher, T, Ts...> {
+    using type =
+        typename if_then_else<is_instance_of_char<T, Matcher>::value, T,
+                              typename get_matcher<Matcher, Ts...>::type>::type;
+};
+
+template <template <char...> class Matcher>
+struct get_matcher<Matcher> {
+    using type = Matcher<'\0'>;
+};
+
+///////////////////////////////////////////////
+// TODO add restriction
+template <typename... Ts>
+struct setup {
+    using quote = typename get_matcher<quote, Ts...>::type;
+    using trim = typename get_matcher<trim, Ts...>::type;
+    using escape = typename get_matcher<escape, Ts...>::type;
+};
+
+template <typename... Ts>
+struct setup<setup<Ts...>> : setup<Ts...> {};
+
+/////////////////////////////////////////////////////////////////////////////
+
+enum class State { finished, begin, reading, quoting };
+using range = std::pair<const char*, const char*>;
+
+using string_range = std::pair<const char*, const char*>;
+using split_input = std::vector<string_range>;
+
+template <typename... Ts>
+class splitter {
+    using Setup = setup<Ts...>;
+    using quote = typename Setup::quote;
+    using trim = typename Setup::trim;
+    using escape = typename Setup::escape;
+
+    bool match(const char* end_i, char delim) {
+        return *end_i == delim;
+    };
+
+    bool match(const char* end_i, const std::string& delim) {
+        return strncmp(end_i, delim.c_str(), delim.size()) == 0;
+    };
+
+    size_t delimiter_size(char) {
+        return 1;
+    }
+    size_t delimiter_size(const std::string& delim) {
+        return delim.size();
+    }
+
+    void trim_if_enabled(char*& curr) {
+        if constexpr (trim::enabled) {
+            while (trim::match(*curr)) {
+                ++curr;
+            }
+        }
+    }
+
+    void shift_if_escaped(char*& curr_i) {
+        if constexpr (escape::enabled) {
+            if (escape::match(*curr_i)) {
+                *curr = end[1];
+                ++end;
+            }
+        }
+    }
+
+    void shift() {
+        *curr = *end;
+        ++end;
+        ++curr;
+    }
+
+    void shift(size_t n) {
+        memcpy(curr, end, n);
+        end += n;
+        curr += n;
+    }
+
+    template <typename Delim>
+    std::tuple<size_t, bool> match_delimiter(char* begin, const Delim& delim) {
+        char* end_i = begin;
+
+        trim_if_enabled(end_i);
+
+        // just spacing
+        if (*end_i == '\0') {
+            return {0, false};
+        }
+
+        // not a delimiter
+        if (!match(end_i, delim)) {
+            shift_if_escaped(end_i);
+            return {1 + end_i - begin, false};
+        }
+
+        end_i += delimiter_size(delim);
+        trim_if_enabled(end_i);
+
+        // delimiter
+        return {end_i - begin, true};
+    }
+
+public:
+    bool valid() {
+        return error_.empty();
+    }
+
+    split_input& split(char* new_line, const std::string& d = ",") {
+        line = new_line;
+        output_.clear();
+        switch (d.size()) {
+        case 0:
+            // set error
+            return output_;
+        case 1:
+            return split_impl(d[0]);
+        default:
+            return split_impl(d);
+        }
+    }
+
+    template <typename Delim>
+    std::vector<range>& split_impl(const Delim& delim) {
+        state = State::begin;
+        begin = line;
+
+        trim_if_enabled(begin);
+
+        while (state != State::finished) {
+            curr = end = begin;
+            switch (state) {
+            case (State::begin):
+                state_begin();
+                break;
+            case (State::reading):
+                state_reading(delim);
+                break;
+            case (State::quoting):
+                state_quoting(delim);
+                break;
+            default:
+                break;
+            };
+        }
+
+        return output_;
+    }
+
+    void state_begin() {
+        if constexpr (quote::enabled) {
+            if (quote::match(*begin)) {
+                ++begin;
+                state = State::quoting;
+                return;
+            }
+        }
+        state = State::reading;
+    }
+
+    template <typename Delim>
+    void state_reading(const Delim& delim) {
+        while (true) {
+            auto [width, valid] = match_delimiter(end, delim);
+
+            // not a delimiter
+            if (!valid) {
+                if (width == 0) {
+                    // eol
+                    output_.emplace_back(begin, curr);
+                    state = State::finished;
+                    break;
+                } else {
+                    shift(width);
+                    continue;
+                }
+            }
+
+            // found delimiter
+            push_and_start_next(width);
+            break;
+        }
+    }
+
+    template <typename Delim>
+    void state_quoting(const Delim& delim) {
+        if constexpr (quote::enabled) {
+            while (true) {
+                if (quote::match(*end)) {
+                    // double quote
+                    // eg: ...,"hel""lo,... -> hel"lo
+                    if (quote::match(end[1])) {
+                        ++end;
+                        shift();
+                        continue;
+                    }
+
+                    auto [width, valid] = match_delimiter(end + 1, delim);
+
+                    // not a delimiter
+                    if (!valid) {
+                        if (width == 0) {
+                            // eol
+                            // eg: ...,"hello"   \0 -> hello
+                            // eg no trim: ...,"hello"\0 -> hello
+                            output_.emplace_back(begin, curr);
+                        } else {
+                            // missmatched quote
+                            // eg: ...,"hel"lo,... -> error
+                        }
+                        state = State::finished;
+                        break;
+                    }
+
+                    // delimiter
+                    push_and_start_next(width + 1);
+                    break;
+                }
+
+                if constexpr (escape::enabled) {
+                    if (escape::match(*end)) {
+                        ++end;
+                        shift();
+                        continue;
+                    }
+                }
+
+                // unterminated error
+                // eg: ..."hell\0 -> quote not terminated
+                if (*end == '\0') {
+                    *curr = '\0';
+                    state = State::finished;
+                    break;
+                }
+                shift();
+            }
+        } else {
+            // set error impossible scenario
+            state = State::finished;
+        }
+    }
+
+    void push_and_start_next(size_t n) {
+        output_.emplace_back(begin, curr);
+        begin = end + n;
+        state = State::begin;
+    }
+
+private:
+    std::vector<range> output_;
+    std::string error_ = "";
+    State state;
+    char* curr;
+    char* end;
+    char* begin;
+    char* line;
+};
+
+////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////
+
 ////////////////
 // converter
 ////////////////
 
+template <typename... Matchers>
 class converter {
-    using string_range = std::pair<const char*, const char*>;
-    constexpr static auto default_delimiter = ',';
+    constexpr static auto default_delimiter = ",";
 
 public:
-    using split_input = std::vector<string_range>;
-
     // parses line with given delimiter, returns a 'T' object created with
     // extracted values of type 'Ts'
     template <typename T, typename... Ts>
-    T convert_object(const char* const line, const std::string& delim = "") {
+    T convert_object(char* line, const std::string& delim = default_delimiter) {
         return to_object<T>(convert<Ts...>(line, delim));
     }
 
     // parses line with given delimiter, returns tuple of objects with
     // extracted values of type 'Ts'
     template <typename... Ts>
-    no_void_validator_tup_t<Ts...> convert(const char* const line,
-                                           const std::string& delim = "") {
+    no_void_validator_tup_t<Ts...> convert(
+        char* line, const std::string& delim = default_delimiter) {
         input_ = split(line, delim);
         return convert<Ts...>(input_);
     }
@@ -205,21 +527,15 @@ public:
 
     // 'splits' string by given delimiter, returns vector of pairs which
     // contain the beginnings and the ends of each column of the string
-    const split_input& split(const char* const line,
-                             const std::string& delim = "") {
+    const split_input& split(char* line,
+                             const std::string& delim = default_delimiter) {
         input_.clear();
         if (line[0] == '\0') {
             return input_;
         }
 
-        switch (delim.size()) {
-        case 0:
-            return split_impl(line, ',');
-        case 1:
-            return split_impl(line, delim[0]);
-        default:
-            return split_impl(line, delim, delim.size());
-        };
+        input_ = splitter_.split(line, delim);
+        return input_;
     }
 
 private:
@@ -316,116 +632,6 @@ private:
         return convert_impl<Ts...>(elems);
     }
 
-    ////////////////
-    // substring
-    ////////////////
-
-    template <typename Delim>
-    const split_input& split_impl(const char* const line, Delim delim,
-                                  size_t delim_size = 1) {
-        auto [range, begin] = substring(line, delim);
-        input_.push_back(range);
-        while (range.second[0] != '\0') {
-            if constexpr (quote != '\0') {
-                if (*begin == quote) {
-                    ++begin;
-                }
-                if (*begin == '\0') {
-                    break;
-                }
-            }
-
-            std::tie(range, begin) = substring(begin + delim_size, delim);
-            log("-> " + std::string{range.first, range.second});
-            input_.push_back(range);
-        }
-        return input_;
-    }
-
-    size_t match(const char* begin, char delim) const {
-        const char* p = begin;
-        if constexpr (space == '\0') {
-            if (*p == delim) {
-                return 1;
-            }
-        } else {
-            while (*p == space) {
-                ++p;
-            }
-            if (*p == '\0') {
-                return p - begin;
-            }
-            if (*p != delim) {
-                return 0;
-            }
-            do
-                ++p;
-            while (*p == space);
-            return p - begin;
-        }
-    }
-
-    size_t match(const char* end, const std::string& delim) const {
-        // TODO
-        log("ahamm");
-        return strncmp(end, delim.c_str(), delim.size()) != 0;
-    }
-
-    template <typename Delim>
-    std::tuple<string_range, const char*> substring(const char* begin,
-                                                    Delim delim) {
-        const char* end;
-        const char* i;
-        for (i = begin; *i != '\0'; ++i)
-            ;
-        log(">> " + std::string{begin, i});
-        if constexpr (quote != '\0') {
-            if (*begin == quote) {
-                ++begin;
-
-                for (end = begin; true; ++end) {
-
-                    if (*end == '\0') {
-                        log("error");
-                        set_error_unterminated_quote();
-                        return {string_range{begin, end}, end};
-                    }
-
-                    if constexpr (escaping) {
-                        if (end[-1] == '\\') {
-                            continue;
-                        }
-                    }
-
-                    if (*end == quote) {
-                        break;
-                    }
-                }
-
-                // end is not \0
-                size_t to_ignore = match(end + 1, delim);
-                log(std::to_string(to_ignore));
-                if (to_ignore != 0) {
-                    return {string_range{begin, end}, end + to_ignore};
-                }
-
-                log("error");
-                set_error_invalid_quotation();
-                return {string_range{begin, end}, end};
-            }
-        }
-
-        for (end = begin; *end != '\0'; ++end) {
-            size_t to_ignore = match(end, delim);
-            log(std::to_string(to_ignore));
-            if (to_ignore != 0) {
-                return {string_range{begin, end}, end + to_ignore};
-            }
-        }
-
-        return {string_range{begin, end}, end};
-    }
-
     ////////////////
     // conversion
     ////////////////
@@ -437,6 +643,11 @@ private:
             return;
         }
 
+        if constexpr (std::is_same_v<T, std::string>) {
+            extract(msg.first, msg.second, dst);
+            return;
+        }
+
         if (!extract(msg.first, msg.second, dst)) {
             set_error_invalid_conversion(msg, pos);
             return;
@@ -494,17 +705,7 @@ private:
     std::string string_error_;
     bool bool_error_;
     enum error_mode error_mode_ { error_mode::error_bool };
+    splitter<Matchers...> splitter_;
 };
 
-template <>
-inline void converter::extract_one<std::string>(std::string& dst,
-                                                const string_range msg,
-                                                size_t) {
-    if (!valid()) {
-        return;
-    }
-
-    extract(msg.first, msg.second, dst);
-}
-
 } /* ss */
diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index adb35c0..c48d115 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -250,8 +250,8 @@ private:
         char* buffer_{nullptr};
         char* next_line_buffer_{nullptr};
 
-        converter converter_;
-        converter next_line_converter_;
+        converter<> converter_;
+        converter<> next_line_converter_;
 
         size_t size_{0};
         const std::string& delim_;
@@ -288,7 +288,7 @@ private:
             next_line_converter_.set_error_mode(mode);
         }
 
-        converter& get_converter() {
+        converter<>& get_converter() {
             return converter_;
         }
 
diff --git a/test/makefile b/test/makefile
index 2652fca..9bbe159 100644
--- a/test/makefile
+++ b/test/makefile
@@ -1,6 +1,6 @@
-CXX=clang++-9
-CXXFLAGS=-Wall -Wextra -std=c++17 -O0 -lstdc++fs
-TESTS=test_converter
+CXX=clang++
+CXXFLAGS=-Wall -Wextra -std=c++17 -lstdc++fs
+TESTS=test_parser test_converter test_extractions
 
 all: $(TESTS)
 
diff --git a/test/test_converter b/test/test_converter
deleted file mode 100755
index a24c1b7390ef46e18a95889e3ceb806f6b43a1d6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 900216
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

diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index cf469fb..f9f7631 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -4,13 +4,29 @@
 #include "doctest.h"
 #include <algorithm>
 
-/* TODO
-TEST_CASE("testing quoting with escaping") {
-    std::vector<std::string> values{"10",          "he\\\"llo", "\\\"",
-                                    "\\\"a,a\\\"", "3.33",      "a\\\""};
+class buffer {
+    constexpr static auto buff_size = 1024;
+    char data_[buff_size];
 
+public:
+    char* operator()(const char* data) {
+        memset(data_, '\0', buff_size);
+        strcpy(data_, data);
+        return data_;
+    }
+};
+
+buffer buff;
+
+TEST_CASE("testing splitter with escaping") {
+    std::vector<std::string> values{"10",   "he\\\"llo",
+                                    "\\\"", "\\\"a\\,a\\\"",
+                                    "3.33", "a\\\""};
+
+    char buff[128];
     // with quote
-    ss::converter c;
+    ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+    std::string delim = ",";
     for (size_t i = 0; i < values.size() * values.size(); ++i) {
         std::string input1;
         std::string input2;
@@ -22,44 +38,25 @@ TEST_CASE("testing quoting with escaping") {
                 input1.append("\"" + values[j] + "\"");
                 input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
             }
-            input1.push_back(',');
-            input2.push_back(',');
+            input1.append(delim);
+            input2.append(delim);
         }
         input1.pop_back();
         input2.pop_back();
         input1.append("\0\"");
         input2.append("\0\"");
 
-        auto tup1 = c.convert<int, std::string, std::string, std::string,
-                              double, std::string>(input1.c_str(), ",");
-        if (!c.valid()) {
-            FAIL("invalid: " + input1);
-        } else {
-            auto [a, b, c, d, e, f] = tup1;
-            CHECK(a == 10);
-            CHECK(b == "he\"llo");
-            CHECK(c == "\"");
-            CHECK(d == "\"a,a\"");
-            CHECK(e == 3.33);
-            CHECK(f == "a\"");
-            std::cout << a << ' ' << b << ' ' << c << ' ' << d << ' ' << e
-                      << ' ' << f << std::endl;
-            CHECK(tup1 ==
-                  std::make_tuple(10, "he\"llo", "\"", "\"a,a\"", 3.33, "a\""));
-        }
+        memcpy(buff, input1.c_str(), input1.size() + 1);
+        auto tup1 = s.split(buff, delim);
+        CHECK(tup1.size() == 6);
 
-        auto tup2 = c.convert<std::string, double, std::string, std::string,
-                              std::string, int>(input2.c_str(), ",");
-        if (!c.valid()) {
-            FAIL("invalid: " + input2);
-        } else {
-            CHECK(tup2 ==
-                  std::make_tuple("a\"", 3.33, "\"a,a\"", "\"", "he\"llo", 10));
-        }
+        memcpy(buff, input2.c_str(), input2.size() + 1);
+        auto tup2 = s.split(buff, delim);
+        CHECK(tup2.size() == 6);
     }
 }
-*/
 
+/*
 TEST_CASE("testing quoting without escaping") {
     std::vector<std::string> values{"10", "hello", ",", "a,a", "3.33", "a"};
 
@@ -117,6 +114,7 @@ TEST_CASE("testing quoting without escaping") {
         }
     }
 }
+*/
 
 TEST_CASE("testing split") {
     ss::converter c;
@@ -124,13 +122,12 @@ TEST_CASE("testing split") {
          // clang-format off
                 {std::tuple{"a,b,c,d", std::vector{"a", "b", "c", "d"}, ","},
                 {"", {}, " "},
-                {"a,b,c", {"a", "b", "c"}, ""},
                 {" x x x x | x ", {" x x x x ", " x "}, "|"},
                 {"a::b::c::d", {"a", "b", "c", "d"}, "::"},
                 {"x\t-\ty", {"x", "y"}, "\t-\t"},
                 {"x", {"x"}, ","}} // clang-format on
     ) {
-        auto split = c.split(s, delim);
+        auto split = c.split(buff(s), delim);
         CHECK(split.size() == expected.size());
         for (size_t i = 0; i < split.size(); ++i) {
             auto s = std::string(split[i].first, split[i].second);
@@ -143,84 +140,85 @@ TEST_CASE("testing valid conversions") {
     ss::converter c;
 
     {
-        auto tup = c.convert<int>("5");
+        auto tup = c.convert<int>(buff("5"));
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<int, void>("5,junk");
+        auto tup = c.convert<int, void>(buff("5,junk"));
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<void, int>("junk,5");
+        auto tup = c.convert<void, int>(buff("junk,5"));
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<int, void, void>("5\njunk\njunk", "\n");
+        auto tup = c.convert<int, void, void>(buff("5\njunk\njunk"), "\n");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
         // TODO make \t -> ' '
-        auto tup = c.convert<void, int, void>("junk\t5\tjunk", "\t");
+        auto tup = c.convert<void, int, void>(buff("junk\t5\tjunk"), "\t");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<void, void, int>("junk\tjunk\t5", "\t");
+        auto tup = c.convert<void, void, int>(buff("junk\tjunk\t5"), "\t");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
         auto tup =
-            c.convert<void, void, std::optional<int>>("junk\tjunk\t5", "\t");
+            c.convert<void, void, std::optional<int>>(buff("junk\tjunk\t5"),
+                                                      "\t");
         REQUIRE(c.valid());
         REQUIRE(tup.has_value());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<int, double, void>("5,6.6,junk");
+        auto tup = c.convert<int, double, void>(buff("5,6.6,junk"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{5, 6.6});
     }
     {
-        auto tup = c.convert<int, void, double>("5,junk,6.6");
+        auto tup = c.convert<int, void, double>(buff("5,junk,6.6"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{5, 6.6});
     }
     {
-        auto tup = c.convert<void, int, double>("junk;5;6.6", ";");
+        auto tup = c.convert<void, int, double>(buff("junk;5;6.6"), ";");
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{5, 6.6});
     }
     {
         auto tup =
-            c.convert<void, std::optional<int>, double>("junk;5;6.6", ";");
+            c.convert<void, std::optional<int>, double>(buff("junk;5;6.6"),
+                                                        ";");
         REQUIRE(c.valid());
         REQUIRE(std::get<0>(tup).has_value());
         CHECK(tup == std::tuple{5, 6.6});
     }
     {
         auto tup =
-            c.convert<void, std::optional<int>, double>("junk;5.4;6.6", ";");
+            c.convert<void, std::optional<int>, double>(buff("junk;5.4;6.6"),
+                                                        ";");
         REQUIRE(c.valid());
         REQUIRE(!std::get<0>(tup).has_value());
         CHECK(tup == std::tuple{std::nullopt, 6.6});
     }
     {
-        auto tup =
-            c.convert<void, std::variant<int, double>, double>("junk;5;6.6",
-                                                               ";");
+        auto tup = c.convert<void, std::variant<int, double>,
+                             double>(buff("junk;5;6.6"), ";");
         REQUIRE(c.valid());
         REQUIRE(std::holds_alternative<int>(std::get<0>(tup)));
         CHECK(tup == std::tuple{std::variant<int, double>{5}, 6.6});
     }
     {
-        auto tup =
-            c.convert<void, std::variant<int, double>, double>("junk;5.5;6.6",
-                                                               ";");
+        auto tup = c.convert<void, std::variant<int, double>,
+                             double>(buff("junk;5.5;6.6"), ";");
         REQUIRE(c.valid());
         REQUIRE(std::holds_alternative<double>(std::get<0>(tup)));
         CHECK(tup == std::tuple{std::variant<int, double>{5.5}, 6.6});
@@ -230,60 +228,63 @@ TEST_CASE("testing valid conversions") {
 TEST_CASE("testing invalid conversions") {
     ss::converter c;
 
-    c.convert<int>("");
+    c.convert<int>(buff(""));
     REQUIRE(!c.valid());
 
-    c.convert<int, void>("");
+    c.convert<int, void>(buff(""));
     REQUIRE(!c.valid());
 
-    c.convert<int, void>(",junk");
+    c.convert<int, void>(buff(",junk"));
     REQUIRE(!c.valid());
 
-    c.convert<void, int>("junk,");
+    c.convert<void, int>(buff("junk,"));
     REQUIRE(!c.valid());
 
-    c.convert<int>("x");
+    c.convert<int>(buff("x"));
     REQUIRE(!c.valid());
 
-    c.convert<int, void>("x");
+    c.convert<int, void>(buff("x"));
     REQUIRE(!c.valid());
 
-    c.convert<int, void>("x,junk");
+    c.convert<int, void>(buff("x,junk"));
     REQUIRE(!c.valid());
 
-    c.convert<void, int>("junk,x");
+    c.convert<void, int>(buff("junk,x"));
     REQUIRE(!c.valid());
 
-    c.convert<void, std::variant<int, double>, double>("junk;.5.5;6", ";");
+    c.convert<void, std::variant<int, double>, double>(buff("junk;.5.5;6"),
+                                                       ";");
     REQUIRE(!c.valid());
 }
 
 TEST_CASE("testing ss:ax restriction (all except)") {
     ss::converter c;
 
-    c.convert<ss::ax<int, 0>>("0");
+    c.convert<ss::ax<int, 0>>(buff("0"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::ax<int, 0, 1, 2>>("1");
+    c.convert<ss::ax<int, 0, 1, 2>>(buff("1"));
     REQUIRE(!c.valid());
 
-    c.convert<void, char, ss::ax<int, 0, 1, 2>>("junk,c,1");
+    c.convert<void, char, ss::ax<int, 0, 1, 2>>(buff("junk,c,1"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::ax<int, 1>, char>("1,c");
+    c.convert<ss::ax<int, 1>, char>(buff("1,c"));
     REQUIRE(!c.valid());
     {
-        int tup = c.convert<ss::ax<int, 1>>("3");
+        int tup = c.convert<ss::ax<int, 1>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
     {
-        std::tuple<char, int> tup = c.convert<char, ss::ax<int, 1>>("c,3");
+        std::tuple<char, int> tup =
+            c.convert<char, ss::ax<int, 1>>(buff("c,3"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{'c', 3});
     }
     {
-        std::tuple<int, char> tup = c.convert<ss::ax<int, 1>, char>("3,c");
+        std::tuple<int, char> tup =
+            c.convert<ss::ax<int, 1>, char>(buff("3,c"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{3, 'c'});
     }
@@ -292,32 +293,33 @@ TEST_CASE("testing ss:ax restriction (all except)") {
 TEST_CASE("testing ss:nx restriction (none except)") {
     ss::converter c;
 
-    c.convert<ss::nx<int, 1>>("3");
+    c.convert<ss::nx<int, 1>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<char, ss::nx<int, 1, 2, 69>>("c,3");
+    c.convert<char, ss::nx<int, 1, 2, 69>>(buff("c,3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::nx<int, 1>, char>("3,c");
+    c.convert<ss::nx<int, 1>, char>(buff("3,c"));
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::nx<int, 3>>("3");
+        auto tup = c.convert<ss::nx<int, 3>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
     {
-        auto tup = c.convert<ss::nx<int, 0, 1, 2>>("2");
+        auto tup = c.convert<ss::nx<int, 0, 1, 2>>(buff("2"));
         REQUIRE(c.valid());
         CHECK(tup == 2);
     }
     {
-        auto tup = c.convert<char, void, ss::nx<int, 0, 1, 2>>("c,junk,1");
+        auto tup =
+            c.convert<char, void, ss::nx<int, 0, 1, 2>>(buff("c,junk,1"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{'c', 1});
     }
     {
-        auto tup = c.convert<ss::nx<int, 1>, char>("1,c");
+        auto tup = c.convert<ss::nx<int, 1>, char>(buff("1,c"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{1, 'c'});
     }
@@ -326,32 +328,32 @@ TEST_CASE("testing ss:nx restriction (none except)") {
 TEST_CASE("testing ss:ir restriction (in range)") {
     ss::converter c;
 
-    c.convert<ss::ir<int, 0, 2>>("3");
+    c.convert<ss::ir<int, 0, 2>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<char, ss::ir<int, 4, 69>>("c,3");
+    c.convert<char, ss::ir<int, 4, 69>>(buff("c,3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::ir<int, 1, 2>, char>("3,c");
+    c.convert<ss::ir<int, 1, 2>, char>(buff("3,c"));
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::ir<int, 1, 5>>("3");
+        auto tup = c.convert<ss::ir<int, 1, 5>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
     {
-        auto tup = c.convert<ss::ir<int, 0, 2>>("2");
+        auto tup = c.convert<ss::ir<int, 0, 2>>(buff("2"));
         REQUIRE(c.valid());
         CHECK(tup == 2);
     }
     {
-        auto tup = c.convert<char, void, ss::ir<int, 0, 1>>("c,junk,1");
+        auto tup = c.convert<char, void, ss::ir<int, 0, 1>>(buff("c,junk,1"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{'c', 1});
     }
     {
-        auto tup = c.convert<ss::ir<int, 1, 20>, char>("1,c");
+        auto tup = c.convert<ss::ir<int, 1, 20>, char>(buff("1,c"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{1, 'c'});
     }
@@ -360,32 +362,32 @@ TEST_CASE("testing ss:ir restriction (in range)") {
 TEST_CASE("testing ss:oor restriction (out of range)") {
     ss::converter c;
 
-    c.convert<ss::oor<int, 1, 5>>("3");
+    c.convert<ss::oor<int, 1, 5>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::oor<int, 0, 2>>("2");
+    c.convert<ss::oor<int, 0, 2>>(buff("2"));
     REQUIRE(!c.valid());
 
-    c.convert<char, ss::oor<int, 0, 1>, void>("c,1,junk");
+    c.convert<char, ss::oor<int, 0, 1>, void>(buff("c,1,junk"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::oor<int, 1, 20>, char>("1,c");
+    c.convert<ss::oor<int, 1, 20>, char>(buff("1,c"));
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::oor<int, 0, 2>>("3");
+        auto tup = c.convert<ss::oor<int, 0, 2>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<char, void, ss::oor<int, 4, 69>>("c,junk,3");
+        auto tup = c.convert<char, void, ss::oor<int, 4, 69>>(buff("c,junk,3"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{'c', 3});
     }
 
     {
-        auto tup = c.convert<ss::oor<int, 1, 2>, char>("3,c");
+        auto tup = c.convert<ss::oor<int, 1, 2>, char>(buff("3,c"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{3, 'c'});
     }
@@ -407,33 +409,34 @@ inline bool ss::extract(const char* begin, const char* end,
 TEST_CASE("testing ss:ne restriction (not empty)") {
     ss::converter c;
 
-    c.convert<ss::ne<std::string>>("");
+    c.convert<ss::ne<std::string>>(buff(""));
     REQUIRE(!c.valid());
 
-    c.convert<int, ss::ne<std::string>>("3,");
+    c.convert<int, ss::ne<std::string>>(buff("3,"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::ne<std::string>, int>(",3");
+    c.convert<ss::ne<std::string>, int>(buff(",3"));
     REQUIRE(!c.valid());
 
-    c.convert<void, ss::ne<std::string>, int>("junk,,3");
+    c.convert<void, ss::ne<std::string>, int>(buff("junk,,3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::ne<std::vector<int>>>("");
+    c.convert<ss::ne<std::vector<int>>>(buff(""));
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::ne<std::string>>("s");
+        auto tup = c.convert<ss::ne<std::string>>(buff("s"));
         REQUIRE(c.valid());
         CHECK(tup == "s");
     }
     {
-        auto tup = c.convert<std::optional<int>, ss::ne<std::string>>("1,s");
+        auto tup =
+            c.convert<std::optional<int>, ss::ne<std::string>>(buff("1,s"));
         REQUIRE(c.valid());
         CHECK(tup == std::tuple{1, "s"});
     }
     {
-        auto tup = c.convert<ss::ne<std::vector<int>>>("{1 2 3}");
+        auto tup = c.convert<ss::ne<std::vector<int>>>(buff("{1 2 3}"));
         REQUIRE(c.valid());
         CHECK(tup == extracted_vector);
     }
@@ -442,56 +445,56 @@ TEST_CASE("testing ss:ne restriction (not empty)") {
 TEST_CASE("testing ss:lt ss::lte ss::gt ss::gte restriction (in range)") {
     ss::converter c;
 
-    c.convert<ss::lt<int, 3>>("3");
+    c.convert<ss::lt<int, 3>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::lt<int, 2>>("3");
+    c.convert<ss::lt<int, 2>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::gt<int, 3>>("3");
+    c.convert<ss::gt<int, 3>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::gt<int, 4>>("3");
+    c.convert<ss::gt<int, 4>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::lte<int, 2>>("3");
+    c.convert<ss::lte<int, 2>>(buff("3"));
     REQUIRE(!c.valid());
 
-    c.convert<ss::gte<int, 4>>("3");
+    c.convert<ss::gte<int, 4>>(buff("3"));
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::lt<int, 4>>("3");
+        auto tup = c.convert<ss::lt<int, 4>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::gt<int, 2>>("3");
+        auto tup = c.convert<ss::gt<int, 2>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::lte<int, 4>>("3");
+        auto tup = c.convert<ss::lte<int, 4>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::lte<int, 3>>("3");
+        auto tup = c.convert<ss::lte<int, 3>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::gte<int, 2>>("3");
+        auto tup = c.convert<ss::gte<int, 2>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::gte<int, 3>>("3");
+        auto tup = c.convert<ss::gte<int, 3>>(buff("3"));
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
@@ -500,12 +503,12 @@ TEST_CASE("testing ss:lt ss::lte ss::gt ss::gte restriction (in range)") {
 TEST_CASE("testing error mode") {
     ss::converter c;
 
-    c.convert<int>("junk");
+    c.convert<int>(buff("junk"));
     CHECK(!c.valid());
     CHECK(c.error_msg().empty());
 
     c.set_error_mode(ss::error_mode::error_string);
-    c.convert<int>("junk");
+    c.convert<int>(buff("junk"));
     CHECK(!c.valid());
     CHECK(!c.error_msg().empty());
 }
diff --git a/test/test_parser.cpp b/test/test_parser.cpp
index 341a453..bbfe3b5 100644
--- a/test/test_parser.cpp
+++ b/test/test_parser.cpp
@@ -56,6 +56,7 @@ TEST_CASE("testing parser") {
     make_and_write(f.name, data);
     {
         ss::parser p{f.name, ","};
+        p.set_error_mode(ss::error_mode::error_string);
         std::vector<X> i;
 
         while (!p.eof()) {

From 263dba762615e0d86b935a9e9eee5d4aa6fc5940 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 17 Jan 2021 02:15:06 +0100
Subject: [PATCH 03/20] create seperate header for the splitter, move splitter
 tests to different cpp file

---
 include/ss/converter.hpp | 342 +-------------------------------------
 include/ss/splitter.hpp  | 345 +++++++++++++++++++++++++++++++++++++++
 test/makefile            |   2 +-
 test/test_converter.cpp  | 100 +-----------
 test/test_splitter.cpp   |  43 +++++
 5 files changed, 391 insertions(+), 441 deletions(-)
 create mode 100644 include/ss/splitter.hpp
 create mode 100644 test/test_splitter.cpp

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index f2e0433..1d5af37 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -2,6 +2,7 @@
 #include "extract.hpp"
 #include "function_traits.hpp"
 #include "restrictions.hpp"
+#include "splitter.hpp"
 #include "type_traits.hpp"
 #include <string>
 #include <type_traits>
@@ -105,347 +106,6 @@ constexpr bool tied_class_v = tied_class<Ts...>::value;
 // the error can be set inside a string, or a bool
 enum class error_mode { error_string, error_bool };
 
-////////////////////////////////////////////////////////
-////////////////////////////////////////////////////////
-////////////////////////////////////////////////////////
-////////////////////////////////////////////////////////
-
-///////////////////////////////////////////////////////////////////////////////
-template <char... Cs>
-struct matcher {
-private:
-    template <char X, char... Xs>
-    static bool match_impl(char c) {
-        if constexpr (sizeof...(Xs) != 0) {
-            return (c == X) || match_impl<Xs...>(c);
-        }
-        return (c == X);
-    }
-
-public:
-    static bool match(char c) {
-        return match_impl<Cs...>(c);
-    }
-    constexpr static bool enabled = true;
-};
-
-template <>
-class matcher<'\0'> {
-public:
-    constexpr static bool enabled = false;
-    static bool match(char c) = delete;
-};
-
-////////////////
-// is instance of
-////////////////
-
-template <typename T, template <char...> class Template>
-struct is_instance_of_char {
-    constexpr static bool value = false;
-};
-
-template <char... Ts, template <char...> class Template>
-struct is_instance_of_char<Template<Ts...>, Template> {
-    constexpr static bool value = true;
-};
-
-///////////////////////////////////////////////////
-
-template <char... Cs>
-struct quote : matcher<Cs...> {};
-
-template <char... Cs>
-struct trim : matcher<Cs...> {};
-
-template <char... Cs>
-struct escape : matcher<Cs...> {};
-
-/////////////////////////////////////////////////
-// -> type traits
-template <bool B, typename T, typename U>
-struct if_then_else;
-
-template <typename T, typename U>
-struct if_then_else<true, T, U> {
-    using type = T;
-};
-
-template <typename T, typename U>
-struct if_then_else<false, T, U> {
-    using type = U;
-};
-
-//////////////////////////////////////////////
-template <template <char...> class Matcher, typename... Ts>
-struct get_matcher;
-
-template <template <char...> class Matcher, typename T, typename... Ts>
-struct get_matcher<Matcher, T, Ts...> {
-    using type =
-        typename if_then_else<is_instance_of_char<T, Matcher>::value, T,
-                              typename get_matcher<Matcher, Ts...>::type>::type;
-};
-
-template <template <char...> class Matcher>
-struct get_matcher<Matcher> {
-    using type = Matcher<'\0'>;
-};
-
-///////////////////////////////////////////////
-// TODO add restriction
-template <typename... Ts>
-struct setup {
-    using quote = typename get_matcher<quote, Ts...>::type;
-    using trim = typename get_matcher<trim, Ts...>::type;
-    using escape = typename get_matcher<escape, Ts...>::type;
-};
-
-template <typename... Ts>
-struct setup<setup<Ts...>> : setup<Ts...> {};
-
-/////////////////////////////////////////////////////////////////////////////
-
-enum class State { finished, begin, reading, quoting };
-using range = std::pair<const char*, const char*>;
-
-using string_range = std::pair<const char*, const char*>;
-using split_input = std::vector<string_range>;
-
-template <typename... Ts>
-class splitter {
-    using Setup = setup<Ts...>;
-    using quote = typename Setup::quote;
-    using trim = typename Setup::trim;
-    using escape = typename Setup::escape;
-
-    bool match(const char* end_i, char delim) {
-        return *end_i == delim;
-    };
-
-    bool match(const char* end_i, const std::string& delim) {
-        return strncmp(end_i, delim.c_str(), delim.size()) == 0;
-    };
-
-    size_t delimiter_size(char) {
-        return 1;
-    }
-    size_t delimiter_size(const std::string& delim) {
-        return delim.size();
-    }
-
-    void trim_if_enabled(char*& curr) {
-        if constexpr (trim::enabled) {
-            while (trim::match(*curr)) {
-                ++curr;
-            }
-        }
-    }
-
-    void shift_if_escaped(char*& curr_i) {
-        if constexpr (escape::enabled) {
-            if (escape::match(*curr_i)) {
-                *curr = end[1];
-                ++end;
-            }
-        }
-    }
-
-    void shift() {
-        *curr = *end;
-        ++end;
-        ++curr;
-    }
-
-    void shift(size_t n) {
-        memcpy(curr, end, n);
-        end += n;
-        curr += n;
-    }
-
-    template <typename Delim>
-    std::tuple<size_t, bool> match_delimiter(char* begin, const Delim& delim) {
-        char* end_i = begin;
-
-        trim_if_enabled(end_i);
-
-        // just spacing
-        if (*end_i == '\0') {
-            return {0, false};
-        }
-
-        // not a delimiter
-        if (!match(end_i, delim)) {
-            shift_if_escaped(end_i);
-            return {1 + end_i - begin, false};
-        }
-
-        end_i += delimiter_size(delim);
-        trim_if_enabled(end_i);
-
-        // delimiter
-        return {end_i - begin, true};
-    }
-
-public:
-    bool valid() {
-        return error_.empty();
-    }
-
-    split_input& split(char* new_line, const std::string& d = ",") {
-        line = new_line;
-        output_.clear();
-        switch (d.size()) {
-        case 0:
-            // set error
-            return output_;
-        case 1:
-            return split_impl(d[0]);
-        default:
-            return split_impl(d);
-        }
-    }
-
-    template <typename Delim>
-    std::vector<range>& split_impl(const Delim& delim) {
-        state = State::begin;
-        begin = line;
-
-        trim_if_enabled(begin);
-
-        while (state != State::finished) {
-            curr = end = begin;
-            switch (state) {
-            case (State::begin):
-                state_begin();
-                break;
-            case (State::reading):
-                state_reading(delim);
-                break;
-            case (State::quoting):
-                state_quoting(delim);
-                break;
-            default:
-                break;
-            };
-        }
-
-        return output_;
-    }
-
-    void state_begin() {
-        if constexpr (quote::enabled) {
-            if (quote::match(*begin)) {
-                ++begin;
-                state = State::quoting;
-                return;
-            }
-        }
-        state = State::reading;
-    }
-
-    template <typename Delim>
-    void state_reading(const Delim& delim) {
-        while (true) {
-            auto [width, valid] = match_delimiter(end, delim);
-
-            // not a delimiter
-            if (!valid) {
-                if (width == 0) {
-                    // eol
-                    output_.emplace_back(begin, curr);
-                    state = State::finished;
-                    break;
-                } else {
-                    shift(width);
-                    continue;
-                }
-            }
-
-            // found delimiter
-            push_and_start_next(width);
-            break;
-        }
-    }
-
-    template <typename Delim>
-    void state_quoting(const Delim& delim) {
-        if constexpr (quote::enabled) {
-            while (true) {
-                if (quote::match(*end)) {
-                    // double quote
-                    // eg: ...,"hel""lo,... -> hel"lo
-                    if (quote::match(end[1])) {
-                        ++end;
-                        shift();
-                        continue;
-                    }
-
-                    auto [width, valid] = match_delimiter(end + 1, delim);
-
-                    // not a delimiter
-                    if (!valid) {
-                        if (width == 0) {
-                            // eol
-                            // eg: ...,"hello"   \0 -> hello
-                            // eg no trim: ...,"hello"\0 -> hello
-                            output_.emplace_back(begin, curr);
-                        } else {
-                            // missmatched quote
-                            // eg: ...,"hel"lo,... -> error
-                        }
-                        state = State::finished;
-                        break;
-                    }
-
-                    // delimiter
-                    push_and_start_next(width + 1);
-                    break;
-                }
-
-                if constexpr (escape::enabled) {
-                    if (escape::match(*end)) {
-                        ++end;
-                        shift();
-                        continue;
-                    }
-                }
-
-                // unterminated error
-                // eg: ..."hell\0 -> quote not terminated
-                if (*end == '\0') {
-                    *curr = '\0';
-                    state = State::finished;
-                    break;
-                }
-                shift();
-            }
-        } else {
-            // set error impossible scenario
-            state = State::finished;
-        }
-    }
-
-    void push_and_start_next(size_t n) {
-        output_.emplace_back(begin, curr);
-        begin = end + n;
-        state = State::begin;
-    }
-
-private:
-    std::vector<range> output_;
-    std::string error_ = "";
-    State state;
-    char* curr;
-    char* end;
-    char* begin;
-    char* line;
-};
-
-////////////////////////////////////////////////////////
-////////////////////////////////////////////////////////
-////////////////////////////////////////////////////////
-
 ////////////////
 // converter
 ////////////////
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
new file mode 100644
index 0000000..70867f7
--- /dev/null
+++ b/include/ss/splitter.hpp
@@ -0,0 +1,345 @@
+#pragma once
+#include "type_traits.hpp"
+#include <cstdlib>
+#include <cstring>
+#include <string>
+#include <vector>
+
+namespace ss {
+template <char... Cs>
+struct matcher {
+private:
+    template <char X, char... Xs>
+    static bool match_impl(char c) {
+        if constexpr (sizeof...(Xs) != 0) {
+            return (c == X) || match_impl<Xs...>(c);
+        }
+        return (c == X);
+    }
+
+public:
+    static bool match(char c) {
+        return match_impl<Cs...>(c);
+    }
+    constexpr static bool enabled = true;
+};
+
+template <>
+class matcher<'\0'> {
+public:
+    constexpr static bool enabled = false;
+    static bool match(char c) = delete;
+};
+
+////////////////
+// is instance of
+////////////////
+
+template <typename T, template <char...> class Template>
+struct is_instance_of_char {
+    constexpr static bool value = false;
+};
+
+template <char... Ts, template <char...> class Template>
+struct is_instance_of_char<Template<Ts...>, Template> {
+    constexpr static bool value = true;
+};
+
+///////////////////////////////////////////////////
+
+template <char... Cs>
+struct quote : matcher<Cs...> {};
+
+template <char... Cs>
+struct trim : matcher<Cs...> {};
+
+template <char... Cs>
+struct escape : matcher<Cs...> {};
+
+/////////////////////////////////////////////////
+// -> type traits
+template <bool B, typename T, typename U>
+struct if_then_else;
+
+template <typename T, typename U>
+struct if_then_else<true, T, U> {
+    using type = T;
+};
+
+template <typename T, typename U>
+struct if_then_else<false, T, U> {
+    using type = U;
+};
+
+//////////////////////////////////////////////
+template <template <char...> class Matcher, typename... Ts>
+struct get_matcher;
+
+template <template <char...> class Matcher, typename T, typename... Ts>
+struct get_matcher<Matcher, T, Ts...> {
+    using type =
+        typename if_then_else<is_instance_of_char<T, Matcher>::value, T,
+                              typename get_matcher<Matcher, Ts...>::type>::type;
+};
+
+template <template <char...> class Matcher>
+struct get_matcher<Matcher> {
+    using type = Matcher<'\0'>;
+};
+
+///////////////////////////////////////////////
+// TODO add restriction
+template <typename... Ts>
+struct setup {
+    using quote = typename get_matcher<quote, Ts...>::type;
+    using trim = typename get_matcher<trim, Ts...>::type;
+    using escape = typename get_matcher<escape, Ts...>::type;
+};
+
+template <typename... Ts>
+struct setup<setup<Ts...>> : setup<Ts...> {};
+
+/////////////////////////////////////////////////////////////////////////////
+
+enum class State { finished, begin, reading, quoting };
+using range = std::pair<const char*, const char*>;
+
+using string_range = std::pair<const char*, const char*>;
+using split_input = std::vector<string_range>;
+
+template <typename... Ts>
+class splitter {
+    using Setup = setup<Ts...>;
+    using quote = typename Setup::quote;
+    using trim = typename Setup::trim;
+    using escape = typename Setup::escape;
+
+    bool match(const char* end_i, char delim) {
+        return *end_i == delim;
+    };
+
+    bool match(const char* end_i, const std::string& delim) {
+        return strncmp(end_i, delim.c_str(), delim.size()) == 0;
+    };
+
+    size_t delimiter_size(char) {
+        return 1;
+    }
+
+    size_t delimiter_size(const std::string& delim) {
+        return delim.size();
+    }
+
+    void trim_if_enabled(char*& curr) {
+        if constexpr (trim::enabled) {
+            while (trim::match(*curr)) {
+                ++curr;
+            }
+        }
+    }
+
+    void shift_if_escaped(char*& curr_i) {
+        if constexpr (escape::enabled) {
+            if (escape::match(*curr_i)) {
+                *curr = end[1];
+                ++end;
+            }
+        }
+    }
+
+    void shift() {
+        if constexpr (escape::enabled || quote::enabled) {
+            *curr = *end;
+        }
+        ++end;
+        ++curr;
+    }
+
+    void shift(size_t n) {
+        if constexpr (escape::enabled || quote::enabled) {
+            memcpy(curr, end, n);
+        }
+        end += n;
+        curr += n;
+    }
+
+    template <typename Delim>
+    std::tuple<size_t, bool> match_delimiter(char* begin, const Delim& delim) {
+        char* end_i = begin;
+
+        trim_if_enabled(end_i);
+
+        // just spacing
+        if (*end_i == '\0') {
+            return {0, false};
+        }
+
+        // not a delimiter
+        if (!match(end_i, delim)) {
+            shift_if_escaped(end_i);
+            return {1 + end_i - begin, false};
+        }
+
+        end_i += delimiter_size(delim);
+        trim_if_enabled(end_i);
+
+        // delimiter
+        return {end_i - begin, true};
+    }
+
+public:
+    bool valid() {
+        return error_.empty();
+    }
+
+    split_input& split(char* new_line, const std::string& d = ",") {
+        line = new_line;
+        output_.clear();
+        switch (d.size()) {
+        case 0:
+            // set error
+            return output_;
+        case 1:
+            return split_impl(d[0]);
+        default:
+            return split_impl(d);
+        }
+    }
+
+    template <typename Delim>
+    std::vector<range>& split_impl(const Delim& delim) {
+        state = State::begin;
+        begin = line;
+
+        trim_if_enabled(begin);
+
+        while (state != State::finished) {
+            curr = end = begin;
+            switch (state) {
+            case (State::begin):
+                state_begin();
+                break;
+            case (State::reading):
+                state_reading(delim);
+                break;
+            case (State::quoting):
+                state_quoting(delim);
+                break;
+            default:
+                break;
+            };
+        }
+
+        return output_;
+    }
+
+    void state_begin() {
+        if constexpr (quote::enabled) {
+            if (quote::match(*begin)) {
+                ++begin;
+                state = State::quoting;
+                return;
+            }
+        }
+        state = State::reading;
+    }
+
+    template <typename Delim>
+    void state_reading(const Delim& delim) {
+        while (true) {
+            auto [width, valid] = match_delimiter(end, delim);
+
+            // not a delimiter
+            if (!valid) {
+                if (width == 0) {
+                    // eol
+                    output_.emplace_back(begin, curr);
+                    state = State::finished;
+                    break;
+                } else {
+                    shift(width);
+                    continue;
+                }
+            }
+
+            // found delimiter
+            push_and_start_next(width);
+            break;
+        }
+    }
+
+    template <typename Delim>
+    void state_quoting(const Delim& delim) {
+        if constexpr (quote::enabled) {
+            while (true) {
+                if (quote::match(*end)) {
+                    // double quote
+                    // eg: ...,"hel""lo,... -> hel"lo
+                    if (quote::match(end[1])) {
+                        ++end;
+                        shift();
+                        continue;
+                    }
+
+                    auto [width, valid] = match_delimiter(end + 1, delim);
+
+                    // not a delimiter
+                    if (!valid) {
+                        if (width == 0) {
+                            // eol
+                            // eg: ...,"hello"   \0 -> hello
+                            // eg no trim: ...,"hello"\0 -> hello
+                            output_.emplace_back(begin, curr);
+                        } else {
+                            // missmatched quote
+                            // eg: ...,"hel"lo,... -> error
+                        }
+                        state = State::finished;
+                        break;
+                    }
+
+                    // delimiter
+                    push_and_start_next(width + 1);
+                    break;
+                }
+
+                if constexpr (escape::enabled) {
+                    if (escape::match(*end)) {
+                        ++end;
+                        shift();
+                        continue;
+                    }
+                }
+
+                // unterminated error
+                // eg: ..."hell\0 -> quote not terminated
+                if (*end == '\0') {
+                    *curr = '\0';
+                    state = State::finished;
+                    break;
+                }
+                shift();
+            }
+        } else {
+            // set error impossible scenario
+            state = State::finished;
+        }
+    }
+
+    void push_and_start_next(size_t n) {
+        output_.emplace_back(begin, curr);
+        begin = end + n;
+        state = State::begin;
+    }
+
+private:
+    std::vector<range> output_;
+    std::string error_ = "";
+    State state;
+    char* curr;
+    char* end;
+    char* begin;
+    char* line;
+};
+
+} /* ss */
diff --git a/test/makefile b/test/makefile
index 9bbe159..2b4f851 100644
--- a/test/makefile
+++ b/test/makefile
@@ -1,6 +1,6 @@
 CXX=clang++
 CXXFLAGS=-Wall -Wextra -std=c++17 -lstdc++fs
-TESTS=test_parser test_converter test_extractions
+TESTS=test_parser test_converter test_extractions test_splitter
 
 all: $(TESTS)
 
diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index f9f7631..e708fef 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -16,105 +16,7 @@ public:
     }
 };
 
-buffer buff;
-
-TEST_CASE("testing splitter with escaping") {
-    std::vector<std::string> values{"10",   "he\\\"llo",
-                                    "\\\"", "\\\"a\\,a\\\"",
-                                    "3.33", "a\\\""};
-
-    char buff[128];
-    // with quote
-    ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
-    std::string delim = ",";
-    for (size_t i = 0; i < values.size() * values.size(); ++i) {
-        std::string input1;
-        std::string input2;
-        for (size_t j = 0; j < values.size(); ++j) {
-            if (i & (1 << j) && j != 2 && j != 3) {
-                input1.append(values[j]);
-                input2.append(values.at(values.size() - 1 - j));
-            } else {
-                input1.append("\"" + values[j] + "\"");
-                input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
-            }
-            input1.append(delim);
-            input2.append(delim);
-        }
-        input1.pop_back();
-        input2.pop_back();
-        input1.append("\0\"");
-        input2.append("\0\"");
-
-        memcpy(buff, input1.c_str(), input1.size() + 1);
-        auto tup1 = s.split(buff, delim);
-        CHECK(tup1.size() == 6);
-
-        memcpy(buff, input2.c_str(), input2.size() + 1);
-        auto tup2 = s.split(buff, delim);
-        CHECK(tup2.size() == 6);
-    }
-}
-
-/*
-TEST_CASE("testing quoting without escaping") {
-    std::vector<std::string> values{"10", "hello", ",", "a,a", "3.33", "a"};
-
-    // with quote
-    ss::converter c;
-    for (size_t i = 0; i < values.size() * values.size(); ++i) {
-        std::string input1;
-        std::string input2;
-        for (size_t j = 0; j < values.size(); ++j) {
-            if (i & (1 << j) && j != 2 && j != 3) {
-                input1.append(values[j]);
-                input2.append(values.at(values.size() - 1 - j));
-            } else {
-                input1.append("\"" + values[j] + "\"");
-                input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
-            }
-            input1.append("__");
-            input1.push_back(',');
-            input1.append("__");
-            input2.push_back(',');
-        }
-        input1.pop_back();
-        input1.pop_back();
-        input1.pop_back();
-        input2.pop_back();
-        input1.append("\0\"");
-        input2.append("\0\"");
-
-        auto tup1 = c.convert<int, std::string, std::string, std::string,
-                              double, char>(input1.c_str(), ",");
-        if (!c.valid()) {
-            FAIL("invalid: " + input1);
-        } else {
-            auto [a, b, c, d, e, f] = tup1;
-            CHECK(a == 10);
-            CHECK(b == "hello");
-            CHECK(c == ",");
-            CHECK(d == "a,a");
-            CHECK(e == 3.33);
-            CHECK(f == 'a');
-        }
-
-        auto tup2 = c.convert<char, double, std::string, std::string,
-                              std::string, int>(input2.c_str(), ",");
-        if (!c.valid()) {
-            FAIL("invalid: " + input2);
-        } else {
-            auto [f, e, d, c, b, a] = tup2;
-            CHECK(a == 10);
-            CHECK(b == "hello");
-            CHECK(c == ",");
-            CHECK(d == "a,a");
-            CHECK(e == 3.33);
-            CHECK(f == 'a');
-        }
-    }
-}
-*/
+static buffer buff;
 
 TEST_CASE("testing split") {
     ss::converter c;
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
new file mode 100644
index 0000000..22c37a2
--- /dev/null
+++ b/test/test_splitter.cpp
@@ -0,0 +1,43 @@
+#include <iostream>
+#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
+#include "../include/ss/splitter.hpp"
+#include "doctest.h"
+#include <algorithm>
+
+TEST_CASE("testing splitter with escaping") {
+    std::vector<std::string> values{"10",   "he\\\"llo",
+                                    "\\\"", "\\\"a\\,a\\\"",
+                                    "3.33", "a\\\""};
+
+    char buff[128];
+    // with quote
+    ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+    std::string delim = ",";
+    for (size_t i = 0; i < values.size() * values.size(); ++i) {
+        std::string input1;
+        std::string input2;
+        for (size_t j = 0; j < values.size(); ++j) {
+            if (i & (1 << j) && j != 2 && j != 3) {
+                input1.append(values[j]);
+                input2.append(values.at(values.size() - 1 - j));
+            } else {
+                input1.append("\"" + values[j] + "\"");
+                input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
+            }
+            input1.append(delim);
+            input2.append(delim);
+        }
+        input1.pop_back();
+        input2.pop_back();
+        input1.append("\0\"");
+        input2.append("\0\"");
+
+        memcpy(buff, input1.c_str(), input1.size() + 1);
+        auto tup1 = s.split(buff, delim);
+        CHECK(tup1.size() == 6);
+
+        memcpy(buff, input2.c_str(), input2.size() + 1);
+        auto tup2 = s.split(buff, delim);
+        CHECK(tup2.size() == 6);
+    }
+}

From 024e5d3810486d1c14e6ffd3d8d3e617a91ad456 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 17 Jan 2021 14:53:07 +0100
Subject: [PATCH 04/20] refactor splitter

---
 include/ss/extract.hpp     |  1 +
 include/ss/splitter.hpp    | 99 +++++++++++++++-----------------------
 include/ss/type_traits.hpp | 17 +++++++
 test/makefile              |  2 +-
 4 files changed, 57 insertions(+), 62 deletions(-)

diff --git a/include/ss/extract.hpp b/include/ss/extract.hpp
index f994430..b10759d 100644
--- a/include/ss/extract.hpp
+++ b/include/ss/extract.hpp
@@ -33,6 +33,7 @@ std::enable_if_t<std::is_floating_point_v<T>, T> pow10(int n) {
     return ret;
 }
 
+// TODO not working with large number of digits
 template <typename T>
 std::enable_if_t<std::is_floating_point_v<T>, std::optional<T>> to_num(
     const char* begin, const char* const end) {
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index 70867f7..9308dd9 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -31,22 +31,6 @@ public:
     static bool match(char c) = delete;
 };
 
-////////////////
-// is instance of
-////////////////
-
-template <typename T, template <char...> class Template>
-struct is_instance_of_char {
-    constexpr static bool value = false;
-};
-
-template <char... Ts, template <char...> class Template>
-struct is_instance_of_char<Template<Ts...>, Template> {
-    constexpr static bool value = true;
-};
-
-///////////////////////////////////////////////////
-
 template <char... Cs>
 struct quote : matcher<Cs...> {};
 
@@ -56,30 +40,24 @@ struct trim : matcher<Cs...> {};
 template <char... Cs>
 struct escape : matcher<Cs...> {};
 
-/////////////////////////////////////////////////
-// -> type traits
-template <bool B, typename T, typename U>
-struct if_then_else;
-
-template <typename T, typename U>
-struct if_then_else<true, T, U> {
-    using type = T;
+template <typename T, template <char...> class Template>
+struct is_instance_of_matcher {
+    constexpr static bool value = false;
 };
 
-template <typename T, typename U>
-struct if_then_else<false, T, U> {
-    using type = U;
+template <char... Ts, template <char...> class Template>
+struct is_instance_of_matcher<Template<Ts...>, Template> {
+    constexpr static bool value = true;
 };
 
-//////////////////////////////////////////////
 template <template <char...> class Matcher, typename... Ts>
 struct get_matcher;
 
 template <template <char...> class Matcher, typename T, typename... Ts>
 struct get_matcher<Matcher, T, Ts...> {
     using type =
-        typename if_then_else<is_instance_of_char<T, Matcher>::value, T,
-                              typename get_matcher<Matcher, Ts...>::type>::type;
+        typename ternary<is_instance_of_matcher<T, Matcher>::value, T,
+                         typename get_matcher<Matcher, Ts...>::type>::type;
 };
 
 template <template <char...> class Matcher>
@@ -87,21 +65,21 @@ struct get_matcher<Matcher> {
     using type = Matcher<'\0'>;
 };
 
-///////////////////////////////////////////////
-// TODO add restriction
+template <template <char...> class Matcher, typename... Ts>
+using get_matcher_t = typename get_matcher<Matcher, Ts...>::type;
+
+// TODO add static asserts
 template <typename... Ts>
 struct setup {
-    using quote = typename get_matcher<quote, Ts...>::type;
-    using trim = typename get_matcher<trim, Ts...>::type;
-    using escape = typename get_matcher<escape, Ts...>::type;
+    using quote = get_matcher_t<quote, Ts...>;
+    using trim = get_matcher_t<trim, Ts...>;
+    using escape = get_matcher_t<escape, Ts...>;
 };
 
 template <typename... Ts>
 struct setup<setup<Ts...>> : setup<Ts...> {};
 
-/////////////////////////////////////////////////////////////////////////////
-
-enum class State { finished, begin, reading, quoting };
+enum class state { begin, reading, quoting, finished };
 using range = std::pair<const char*, const char*>;
 
 using string_range = std::pair<const char*, const char*>;
@@ -109,10 +87,9 @@ using split_input = std::vector<string_range>;
 
 template <typename... Ts>
 class splitter {
-    using Setup = setup<Ts...>;
-    using quote = typename Setup::quote;
-    using trim = typename Setup::trim;
-    using escape = typename Setup::escape;
+    using quote = typename setup<Ts...>::quote;
+    using trim = typename setup<Ts...>::trim;
+    using escape = typename setup<Ts...>::escape;
 
     bool match(const char* end_i, char delim) {
         return *end_i == delim;
@@ -187,6 +164,12 @@ class splitter {
         return {end_i - begin, true};
     }
 
+    void push_and_start_next(size_t n) {
+        output_.emplace_back(begin, curr);
+        begin = end + n;
+        state_ = state::begin;
+    }
+
 public:
     bool valid() {
         return error_.empty();
@@ -208,21 +191,21 @@ public:
 
     template <typename Delim>
     std::vector<range>& split_impl(const Delim& delim) {
-        state = State::begin;
+        state_ = state::begin;
         begin = line;
 
         trim_if_enabled(begin);
 
-        while (state != State::finished) {
+        while (state_ != state::finished) {
             curr = end = begin;
-            switch (state) {
-            case (State::begin):
+            switch (state_) {
+            case (state::begin):
                 state_begin();
                 break;
-            case (State::reading):
+            case (state::reading):
                 state_reading(delim);
                 break;
-            case (State::quoting):
+            case (state::quoting):
                 state_quoting(delim);
                 break;
             default:
@@ -237,11 +220,11 @@ public:
         if constexpr (quote::enabled) {
             if (quote::match(*begin)) {
                 ++begin;
-                state = State::quoting;
+                state_ = state::quoting;
                 return;
             }
         }
-        state = State::reading;
+        state_ = state::reading;
     }
 
     template <typename Delim>
@@ -254,7 +237,7 @@ public:
                 if (width == 0) {
                     // eol
                     output_.emplace_back(begin, curr);
-                    state = State::finished;
+                    state_ = state::finished;
                     break;
                 } else {
                     shift(width);
@@ -294,7 +277,7 @@ public:
                             // missmatched quote
                             // eg: ...,"hel"lo,... -> error
                         }
-                        state = State::finished;
+                        state_ = state::finished;
                         break;
                     }
 
@@ -315,27 +298,21 @@ public:
                 // eg: ..."hell\0 -> quote not terminated
                 if (*end == '\0') {
                     *curr = '\0';
-                    state = State::finished;
+                    state_ = state::finished;
                     break;
                 }
                 shift();
             }
         } else {
             // set error impossible scenario
-            state = State::finished;
+            state_ = state::finished;
         }
     }
 
-    void push_and_start_next(size_t n) {
-        output_.emplace_back(begin, curr);
-        begin = end + n;
-        state = State::begin;
-    }
-
 private:
     std::vector<range> output_;
     std::string error_ = "";
-    State state;
+    state state_;
     char* curr;
     char* end;
     char* begin;
diff --git a/include/ss/type_traits.hpp b/include/ss/type_traits.hpp
index 0653696..e30207a 100644
--- a/include/ss/type_traits.hpp
+++ b/include/ss/type_traits.hpp
@@ -314,6 +314,23 @@ struct is_instance_of<Template<Ts...>, Template> {
     constexpr static bool value = true;
 };
 
+////////////////
+// ternary
+////////////////
+
+template <bool B, typename T, typename U>
+struct ternary;
+
+template <typename T, typename U>
+struct ternary<true, T, U> {
+    using type = T;
+};
+
+template <typename T, typename U>
+struct ternary<false, T, U> {
+    using type = U;
+};
+
 ////////////////
 // tuple to struct
 ////////////////
diff --git a/test/makefile b/test/makefile
index 2b4f851..28243b1 100644
--- a/test/makefile
+++ b/test/makefile
@@ -1,4 +1,4 @@
-CXX=clang++
+CXX=g++
 CXXFLAGS=-Wall -Wextra -std=c++17 -lstdc++fs
 TESTS=test_parser test_converter test_extractions test_splitter
 

From 6193c65388dea54bc7c32182c3fd12a1738dbd77 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 17 Jan 2021 21:46:36 +0100
Subject: [PATCH 05/20] enable matchers for parser

---
 .gitignore                 |  1 +
 include/ss/parser.hpp      | 26 ++++++++++++--------------
 include/ss/type_traits.hpp |  1 +
 3 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/.gitignore b/.gitignore
index aae7f2c..d3bc408 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 compile_commands.json
 .clang-format
 experiment/
+build/
diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index c48d115..7552f10 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -11,11 +11,10 @@
 
 namespace ss {
 
-struct none {};
-template <typename...>
-class composite;
-
+template <typename... Matchers>
 class parser {
+    struct none {};
+
 public:
     parser(const std::string& file_name, const std::string& delimiter)
         : file_name_{file_name}, delim_{delimiter},
@@ -29,7 +28,9 @@ public:
     }
 
     ~parser() {
-        fclose(file_);
+        if (file_) {
+            fclose(file_);
+        }
     }
 
     bool valid() const {
@@ -68,7 +69,7 @@ public:
             return {};
         }
 
-        auto value = buff_.get_converter().convert<T, Ts...>();
+        auto value = buff_.get_converter().template convert<T, Ts...>();
 
         if (!buff_.get_converter().valid()) {
             set_error_invalid_conversion();
@@ -134,8 +135,8 @@ public:
             auto merged_values =
                 std::tuple_cat(std::move(values_),
                                std::tuple<T>{parser_.valid()
-                                              ? std::forward<T>(new_value)
-                                              : std::nullopt});
+                                                 ? std::forward<T>(new_value)
+                                                 : std::nullopt});
             return {std::move(merged_values), parser_};
         }
 
@@ -189,9 +190,6 @@ public:
     };
 
 private:
-    template <typename...>
-    friend class composite;
-
     // tries to invoke the given function (see below), if the function
     // returns a value which can be used as a conditional, and it returns
     // false, the function sets an error, and allows the invoke of the
@@ -250,8 +248,8 @@ private:
         char* buffer_{nullptr};
         char* next_line_buffer_{nullptr};
 
-        converter<> converter_;
-        converter<> next_line_converter_;
+        converter<Matchers...> converter_;
+        converter<Matchers...> next_line_converter_;
 
         size_t size_{0};
         const std::string& delim_;
@@ -288,7 +286,7 @@ private:
             next_line_converter_.set_error_mode(mode);
         }
 
-        converter<>& get_converter() {
+        converter<Matchers...>& get_converter() {
             return converter_;
         }
 
diff --git a/include/ss/type_traits.hpp b/include/ss/type_traits.hpp
index e30207a..64f1dab 100644
--- a/include/ss/type_traits.hpp
+++ b/include/ss/type_traits.hpp
@@ -340,6 +340,7 @@ S to_object(std::index_sequence<Is...>, Tup&& tup) {
     return {std::get<Is>(std::forward<Tup>(tup))...};
 }
 
+// TODO Tup may not be a tuple ...
 template <class S, class Tup>
 S to_object(Tup&& tup) {
     using T = std::remove_reference_t<Tup>;

From f0a01f65d30dbf7da35808739e43256af4f1be26 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Thu, 21 Jan 2021 02:00:26 +0100
Subject: [PATCH 06/20] update splitter tests for meson

---
 test/test_splitter.cpp | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index 22c37a2..e1651fa 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -1,8 +1,13 @@
-#include <iostream>
-#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
-#include "../include/ss/splitter.hpp"
-#include "doctest.h"
 #include <algorithm>
+#include <cstring>
+#include <iostream>
+#include <ss/splitter.hpp>
+
+#ifdef CMAKE_GITHUB_CI
+#include <doctest/doctest.h>
+#else
+#include <doctest.h>
+#endif
 
 TEST_CASE("testing splitter with escaping") {
     std::vector<std::string> values{"10",   "he\\\"llo",

From 86514bfbb6b54d31bced14a529b43dc9046cac70 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Thu, 21 Jan 2021 02:09:51 +0100
Subject: [PATCH 07/20] replace tuple constructor with make_tuple in converter
 test

---
 test/test_converter.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index 8af8f74..b372f10 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -25,7 +25,7 @@ TEST_CASE("testing split") {
     ss::converter c;
     for (const auto& [s, expected, delim] :
          // clang-format off
-                {std::tuple{"a,b,c,d", std::vector{"a", "b", "c", "d"}, ","},
+                {std::make_tuple{"a,b,c,d", std::vector{"a", "b", "c", "d"}, ","},
                 {"", {}, " "},
                 {" x x x x | x ", {" x x x x ", " x "}, "|"},
                 {"a::b::c::d", {"a", "b", "c", "d"}, "::"},

From 15f0c636435d28e63dd75a3c3cc3d55cb60d6dd6 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Thu, 21 Jan 2021 02:13:45 +0100
Subject: [PATCH 08/20] fix converter test

---
 test/test_converter.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index b372f10..b6b3115 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -25,7 +25,7 @@ TEST_CASE("testing split") {
     ss::converter c;
     for (const auto& [s, expected, delim] :
          // clang-format off
-                {std::make_tuple{"a,b,c,d", std::vector{"a", "b", "c", "d"}, ","},
+                {std::make_tuple("a,b,c,d", std::vector{"a", "b", "c", "d"}, ","),
                 {"", {}, " "},
                 {" x x x x | x ", {" x x x x ", " x "}, "|"},
                 {"a::b::c::d", {"a", "b", "c", "d"}, "::"},

From 24fe96dc44d279cf95ba0e7abdce0b263cd02a65 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sat, 23 Jan 2021 21:39:18 +0100
Subject: [PATCH 09/20] add splitter tests

---
 meson.build               |   2 +-
 test/test_converter.cpp   |  21 +-
 test/test_extractions.cpp |   9 +-
 test/test_helpers.hpp     |  22 +++
 test/test_parser.cpp      |  33 ++--
 test/test_splitter.cpp    | 393 ++++++++++++++++++++++++++++++++++----
 6 files changed, 403 insertions(+), 77 deletions(-)
 create mode 100644 test/test_helpers.hpp

diff --git a/meson.build b/meson.build
index c59bd09..16fff8f 100644
--- a/meson.build
+++ b/meson.build
@@ -2,7 +2,7 @@ project('ssp', 'cpp',
   default_options : 
   ['warning_level=3', 
     'cpp_std=c++17', 
-    'buildtype=debug'])
+    'buildtype=debugoptimized'])
 
 includes = include_directories('include')
 subdir('test')
diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index b6b3115..5bcab32 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -1,26 +1,7 @@
+#include "test_helpers.hpp"
 #include <algorithm>
 #include <ss/converter.hpp>
 
-#ifdef CMAKE_GITHUB_CI
-#include <doctest/doctest.h>
-#else
-#include <doctest.h>
-#endif
-
-class buffer {
-    constexpr static auto buff_size = 1024;
-    char data_[buff_size];
-
-public:
-    char* operator()(const char* data) {
-        memset(data_, '\0', buff_size);
-        strcpy(data_, data);
-        return data_;
-    }
-};
-
-static buffer buff;
-
 TEST_CASE("testing split") {
     ss::converter c;
     for (const auto& [s, expected, delim] :
diff --git a/test/test_extractions.cpp b/test/test_extractions.cpp
index d645b61..c0866e9 100644
--- a/test/test_extractions.cpp
+++ b/test/test_extractions.cpp
@@ -1,11 +1,6 @@
-#include <ss/extract.hpp>
+#include "test_helpers.hpp"
 #include <algorithm>
-
-#ifdef CMAKE_GITHUB_CI
-#include <doctest/doctest.h>
-#else
-#include <doctest.h>
-#endif
+#include <ss/extract.hpp>
 
 constexpr auto eps = 0.000001;
 using ld = long double;
diff --git a/test/test_helpers.hpp b/test/test_helpers.hpp
new file mode 100644
index 0000000..87abd8a
--- /dev/null
+++ b/test/test_helpers.hpp
@@ -0,0 +1,22 @@
+#pragma once
+#include <cstring>
+
+#ifdef CMAKE_GITHUB_CI
+#include <doctest/doctest.h>
+#else
+#include <doctest.h>
+#endif
+
+class buffer {
+    constexpr static auto buff_size = 1024;
+    char data_[buff_size];
+
+public:
+    char* operator()(const char* data) {
+        memset(data_, '\0', buff_size);
+        strcpy(data_, data);
+        return data_;
+    }
+};
+
+[[maybe_unused]] inline buffer buff;
diff --git a/test/test_parser.cpp b/test/test_parser.cpp
index 19dd8de..f9518d0 100644
--- a/test/test_parser.cpp
+++ b/test/test_parser.cpp
@@ -1,20 +1,18 @@
+#include "test_helpers.hpp"
 #include <algorithm>
 #include <filesystem>
 #include <fstream>
 #include <ss/parser.hpp>
 
-#ifdef CMAKE_GITHUB_CI
-#include <doctest/doctest.h>
-#else
-#include <doctest.h>
-#endif
-
 struct unique_file_name {
     const std::string name;
 
-    unique_file_name() : name{std::tmpnam(nullptr)} {}
+    unique_file_name() : name{std::tmpnam(nullptr)} {
+    }
 
-    ~unique_file_name() { std::filesystem::remove(name); }
+    ~unique_file_name() {
+        std::filesystem::remove(name);
+    }
 };
 
 struct X {
@@ -30,7 +28,9 @@ struct X {
             .append(delim)
             .append(s);
     }
-    auto tied() const { return std::tie(i, d, s); }
+    auto tied() const {
+        return std::tie(i, d, s);
+    }
 };
 
 template <typename T>
@@ -167,10 +167,13 @@ struct test_struct {
     int i;
     double d;
     char c;
-    auto tied() { return std::tie(i, d, c); }
+    auto tied() {
+        return std::tie(i, d, c);
+    }
 };
 
-void expect_test_struct(const test_struct&) {}
+void expect_test_struct(const test_struct&) {
+}
 
 // various scenarios
 TEST_CASE("testing composite conversion") {
@@ -392,7 +395,9 @@ struct my_string {
 
     my_string() = default;
 
-    ~my_string() { delete[] data; }
+    ~my_string() {
+        delete[] data;
+    }
 
     // make sure no object is copied
     my_string(const my_string&) = delete;
@@ -423,7 +428,9 @@ struct xyz {
     my_string x;
     my_string y;
     my_string z;
-    auto tied() { return std::tie(x, y, z); }
+    auto tied() {
+        return std::tie(x, y, z);
+    }
 };
 
 TEST_CASE("testing the moving of parsed values") {
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index e1651fa..d910cfe 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -1,48 +1,369 @@
+#include "test_helpers.hpp"
 #include <algorithm>
 #include <cstring>
 #include <iostream>
 #include <ss/splitter.hpp>
 
-#ifdef CMAKE_GITHUB_CI
-#include <doctest/doctest.h>
-#else
-#include <doctest.h>
-#endif
+// TODO make ss::quote accept only one argument
 
-TEST_CASE("testing splitter with escaping") {
-    std::vector<std::string> values{"10",   "he\\\"llo",
-                                    "\\\"", "\\\"a\\,a\\\"",
-                                    "3.33", "a\\\""};
+namespace {
+constexpr static auto combinations_size_default = 4;
+size_t combinations_size = combinations_size_default;
 
-    char buff[128];
-    // with quote
-    ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
-    std::string delim = ",";
-    for (size_t i = 0; i < values.size() * values.size(); ++i) {
-        std::string input1;
-        std::string input2;
-        for (size_t j = 0; j < values.size(); ++j) {
-            if (i & (1 << j) && j != 2 && j != 3) {
-                input1.append(values[j]);
-                input2.append(values.at(values.size() - 1 - j));
-            } else {
-                input1.append("\"" + values[j] + "\"");
-                input2.append("\"" + values.at(values.size() - 1 - j) + "\"");
-            }
-            input1.append(delim);
-            input2.append(delim);
+struct set_combinations_size {
+    set_combinations_size(size_t size) {
+        combinations_size = size;
+    }
+    ~set_combinations_size() {
+        combinations_size = combinations_size_default;
+    }
+};
+
+std::vector<std::string> words(const ss::split_input& input) {
+    std::vector<std::string> ret;
+    for (const auto& [begin, end] : input) {
+        ret.emplace_back(begin, end);
+    }
+    return ret;
+}
+
+[[maybe_unused]] std::string concat(const std::vector<std::string>& v) {
+    std::string ret = "{";
+    for (const auto& i : v) {
+        ret.append(i).append(" ");
+    }
+    ret.back() = ('}');
+    return ret;
+}
+
+std::vector<std::string> combinations(const std::vector<std::string>& v,
+                                      const std::string& delim, size_t n) {
+    if (n <= 1) {
+        return v;
+    }
+    std::vector<std::string> ret;
+    auto inner_combinations = combinations(v, delim, n - 1);
+    for (auto& i : v) {
+        for (auto& j : inner_combinations) {
+            ret.push_back(i + delim + j);
         }
-        input1.pop_back();
-        input2.pop_back();
-        input1.append("\0\"");
-        input2.append("\0\"");
+    }
+    return ret;
+}
 
-        memcpy(buff, input1.c_str(), input1.size() + 1);
-        auto tup1 = s.split(buff, delim);
-        CHECK(tup1.size() == 6);
+std::vector<std::vector<std::string>> vector_combinations(
+    const std::vector<std::string>& v, size_t n) {
+    std::vector<std::vector<std::string>> ret;
+    if (n <= 1) {
+        for (auto& i : v) {
+            ret.push_back({i});
+        }
+        return ret;
+    }
 
-        memcpy(buff, input2.c_str(), input2.size() + 1);
-        auto tup2 = s.split(buff, delim);
-        CHECK(tup2.size() == 6);
+    auto inner_combinations = vector_combinations(v, n - 1);
+    for (auto& i : v) {
+        for (auto j : inner_combinations) {
+            j.insert(j.begin(), i);
+            ret.push_back(std::move(j));
+        }
+    }
+    return ret;
+}
+
+using case_type = std::vector<std::string>;
+std::pair<std::vector<std::string>, std::vector<std::vector<std::string>>>
+make_combinations(const std::vector<std::string>& input,
+                  const std::vector<std::string>& output,
+                  const std::string& delim) {
+    std::vector<std::string> lines;
+    std::vector<std::vector<std::string>> expectations;
+    for (size_t i = 0; i < combinations_size; ++i) {
+        auto l = combinations(input, delim, i);
+        lines.reserve(lines.size() + l.size());
+        lines.insert(lines.end(), l.begin(), l.end());
+
+        auto e = vector_combinations(output, i);
+        expectations.reserve(expectations.size() + e.size());
+        expectations.insert(expectations.end(), e.begin(), e.end());
+    }
+
+    return {std::move(lines), std::move(expectations)};
+}
+
+auto spaced(const case_type& input, std::string s) {
+    case_type ret = input;
+    for (auto& i : input) {
+        ret.push_back(s + i + s);
+        ret.push_back(i + s);
+        ret.push_back(s + i);
+        ret.push_back(s + s + i);
+        ret.push_back(s + s + i + s);
+        ret.push_back(s + s + i + s + s);
+        ret.push_back(s + i + s + s);
+        ret.push_back(i + s + s);
+    }
+
+    return ret;
+}
+
+auto spaced(const case_type& input, std::string s1, std::string s2) {
+    case_type ret = input;
+    for (auto& i : input) {
+        ret.push_back(s1 + i + s2);
+        ret.push_back(s2 + i + s1);
+        ret.push_back(s2 + s2 + s1 + s1 + i);
+        ret.push_back(i + s1 + s2 + s1 + s2);
+        ret.push_back(s1 + s1 + s1 + i + s2 + s2 + s2);
+        ret.push_back(s2 + s2 + s2 + i + s1 + s1 + s1);
+    }
+
+    return ret;
+}
+} /* namespace */
+
+/* ********************************** */
+/* ********************************** */
+
+using matches_type = std::vector<std::pair<case_type, std::string>>;
+
+template <typename... Matchers>
+void test_combinations(matches_type& matches, std::vector<std::string> delims) {
+
+    ss::splitter<Matchers...> s;
+    std::vector<std::string> inputs;
+    std::vector<std::string> outputs;
+    for (const auto& [cases, e] : matches) {
+        for (const auto& c : cases) {
+            inputs.emplace_back(c);
+            outputs.emplace_back(e);
+        }
+    }
+
+    for (const auto& delim : delims) {
+        auto [lines, expectations] = make_combinations(inputs, outputs, delim);
+
+        REQUIRE(lines.size() == expectations.size());
+
+        for (size_t i = 0; i < lines.size(); ++i) {
+            auto vec = s.split(buff(lines[i].c_str()), delim);
+            CHECK(s.valid());
+            CHECK(words(vec) == expectations[i]);
+        }
+    }
+}
+
+TEST_CASE("testing splitter no setup") {
+    {
+        matches_type p{{{"x"}, "x"},        {{"\""}, "\""},
+                       {{""}, ""},          {{"\n"}, "\n"},
+                       {{"\"\""}, "\"\""},  {{"\" \\ \""}, "\" \\ \""},
+                       {{"     "}, "     "}};
+        test_combinations(p, {",", ";", "\t", "::"});
+    }
+}
+
+TEST_CASE("testing splitter quote") {
+    case_type case1 = {R"("""")"};
+    case_type case2 = {R"("x""x")", R"(x"x)"};
+    case_type case3 = {R"("")", R"()"};
+    case_type case4 = {R"("x")", R"(x)"};
+    case_type case5 = {R"("""""")"};
+    case_type case6 = {R"("\")", R"(\)"};
+    case_type case7 = {R"("xxxxxxxxxx")", R"(xxxxxxxxxx)"};
+
+    std::vector<std::string> delims = {",", "::", " ", "\t", "\n"};
+
+    {
+        matches_type p{{case1, "\""},        {case2, "x\"x"}, {case3, ""},
+                       {case4, "x"},         {case5, "\"\""}, {case6, "\\"},
+                       {case7, "xxxxxxxxxx"}};
+        test_combinations<ss::quote<'"'>>(p, delims);
+    }
+
+    case_type case8 = {R"(",")"};
+    case_type case9 = {R"("x,")"};
+    case_type case10 = {R"(",x")"};
+    case_type case11 = {R"("x,x")"};
+    case_type case12 = {R"(",,")"};
+    {
+        matches_type p{{case1, "\""}, {case3, ""},    {case8, ","},
+                       {case9, "x,"}, {case10, ",x"}, {case11, "x,x"},
+                       {case12, ",,"}};
+        test_combinations<ss::quote<'"'>>(p, {","});
+    }
+
+    case_type case13 = {R"("::")"};
+    case_type case14 = {R"("x::")"};
+    case_type case15 = {R"("::x")"};
+    case_type case16 = {R"("x::x")"};
+    case_type case17 = {R"("::::")"};
+
+    {
+        matches_type p{{case1, "\""},   {case3, ""},     {case13, "::"},
+                       {case14, "x::"}, {case15, "::x"}, {case16, "x::x"},
+                       {case17, "::::"}};
+        test_combinations<ss::quote<'"'>>(p, {"::"});
+    }
+}
+
+TEST_CASE("testing splitter trim") {
+    auto guard = set_combinations_size(3);
+    case_type case1 = spaced({R"(x)"}, " ");
+    case_type case2 = spaced({R"(yy)"}, " ");
+    case_type case3 = spaced({R"(y y)"}, " ");
+    case_type case4 = spaced({R"()"}, " ");
+
+    std::vector<std::string> delims = {",", "::", "\t", "\n"};
+
+    {
+        matches_type p{{case1, "x"},
+                       {case2, "yy"},
+                       {case3, "y y"},
+                       {case4, ""}};
+        test_combinations<ss::trim<' '>>(p, delims);
+    }
+
+    case_type case5 = spaced({"z"}, "\t");
+    case_type case6 = spaced({"ab"}, " ", "\t");
+    case_type case7 = spaced({"a\tb"}, " ", "\t");
+    case_type case8 = spaced({"a \t b"}, " ", "\t");
+
+    {
+        matches_type p{{case1, "x"},    {case2, "yy"},    {case3, "y y"},
+                       {case4, ""},     {case5, "z"},     {case6, "ab"},
+                       {case7, "a\tb"}, {case8, "a \t b"}};
+        test_combinations<ss::trim<' ', '\t'>>(p, {",", "::", "\n"});
+    }
+}
+
+TEST_CASE("testing splitter escape") {
+    case_type case1 = {R"(x)", R"(\x)"};
+    case_type case2 = {R"(xx)", R"(\xx)", R"(x\x)", R"(\x\x)"};
+    case_type case3 = {R"(\\)"};
+
+    std::vector<std::string> delims = {",", "::", " ", "\t", "\n"};
+
+    {
+        matches_type p{{case1, "x"}, {case2, "xx"}, {case3, "\\"}};
+        test_combinations<ss::escape<'\\'>>(p, delims);
+    }
+
+    case_type case4 = {R"(\,)"};
+    case_type case5 = {R"(x#,)"};
+    case_type case6 = {R"(#,x)"};
+    case_type case7 = {R"(x\,x)"};
+
+    {
+        matches_type p{{case1, "x"},  {case2, "xx"}, {case3, "\\"},
+                       {case4, ","},  {case5, "x,"}, {case6, ",x"},
+                       {case7, "x,x"}};
+        test_combinations<ss::escape<'\\', '#'>>(p, {","});
+    }
+
+    case_type case8 = {R"(\:\:)"};
+    case_type case9 = {R"(x\::x)"};
+
+    {
+        matches_type p{{case1, "x"},
+                       {case2, "xx"},
+                       {case3, "\\"},
+                       {case8, "::"},
+                       {case9, "x::x"}};
+        test_combinations<ss::escape<'\\'>>(p, {"::"});
+    }
+}
+
+TEST_CASE("testing splitter quote and trim") {
+    auto guard = set_combinations_size(3);
+    case_type case1 = spaced({R"("""")"}, " ");
+    case_type case2 = spaced({R"("x""x")", R"(x"x)"}, " ");
+    case_type case3 = spaced({R"("")", R"()"}, " ");
+    case_type case4 = spaced({R"("x")", R"(x)"}, " ");
+    case_type case5 = spaced({R"("""""")"}, " ");
+    case_type case6 = spaced({R"("\")", R"(\)"}, " ");
+    case_type case7 = spaced({R"("xxxxxxxxxx")", R"(xxxxxxxxxx)"}, " ");
+
+    std::vector<std::string> delims = {",", "::", "\t", "\n"};
+
+    {
+        matches_type p{{case1, "\""},        {case2, "x\"x"}, {case3, ""},
+                       {case4, "x"},         {case5, "\"\""}, {case6, "\\"},
+                       {case7, "xxxxxxxxxx"}};
+        test_combinations<ss::quote<'"'>, ss::trim<' '>>(p, delims);
+    }
+
+    return;
+    case_type case8 = {R"(",")"};
+    case_type case9 = {R"("x,")"};
+    case_type case10 = {R"(",x")"};
+    case_type case11 = {R"("x,x")"};
+    case_type case12 = {R"(",,")"};
+    {
+        matches_type p{{case1, "\""}, {case3, ""},    {case8, ","},
+                       {case9, "x,"}, {case10, ",x"}, {case11, "x,x"},
+                       {case12, ",,"}};
+        test_combinations<ss::quote<'"'>>(p, {","});
+    }
+
+    case_type case13 = {R"("::")"};
+    case_type case14 = {R"("x::")"};
+    case_type case15 = {R"("::x")"};
+    case_type case16 = {R"("x::x")"};
+    case_type case17 = {R"("::::")"};
+
+    {
+        matches_type p{{case1, "\""},   {case3, ""},     {case13, "::"},
+                       {case14, "x::"}, {case15, "::x"}, {case16, "x::x"},
+                       {case17, "::::"}};
+        test_combinations<ss::quote<'"'>>(p, {"::"});
+    }
+}
+
+TEST_CASE("testing splitter quote and escape") {
+    case_type case1 = {R"("\"")", R"(\")", R"("""")"};
+    case_type case2 = {R"("x\"x")", R"(x\"x)", R"(x"x)", R"("x""x")"};
+    case_type case3 = {R"("")", R"()"};
+    case_type case4 = {R"("x")", R"(x)"};
+    case_type case5 = {R"("\"\"")", R"("""""")", R"("\"""")", R"("""\"")"};
+    case_type case6 = {R"("\\")", R"(\\)"};
+    case_type case7 = {R"("xxxxxxxxxx")", R"(xxxxxxxxxx)"};
+
+    std::vector<std::string> delims = {",", "::", " ", "\t", "\n"};
+
+    ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+
+    {
+        matches_type p{{case1, "\""},        {case2, "x\"x"}, {case3, ""},
+                       {case4, "x"},         {case5, "\"\""}, {case6, "\\"},
+                       {case7, "xxxxxxxxxx"}};
+        test_combinations<ss::quote<'"'>, ss::escape<'\\'>>(p, delims);
+    }
+
+    case_type case8 = {R"('xxxxxxxxxx')", R"(xxxxxxxxxx)"};
+    case_type case9 = {R"('')", R"()"};
+    case_type case10 = {R"('#\')", R"(#\)"};
+    case_type case11 = {R"('#'')", R"(#')", R"('''')"};
+    case_type case12 = {R"('##')", R"(##)"};
+    {
+        matches_type p{{case8, "xxxxxxxxxx"},
+                       {case9, ""},
+                       {case10, "\\"},
+                       {case11, "'"},
+                       {case12, "#"}};
+        test_combinations<ss::quote<'\''>, ss::escape<'#'>>(p, delims);
+    }
+
+    case_type case13 = {R"("x,x")",  R"(x\,x)",   R"(x#,x)",
+                        R"("x\,x")", R"("x#,x")", R"("x#,x")"};
+    case_type case14 = {R"("#\\#")", R"(#\\#)", R"(\\##)", R"("\\##")"};
+
+    {
+        matches_type p{{case1, "\""},
+                       {case2, "x\"x"},
+                       {case3, ""},
+                       {case13, "x,x"},
+                       {case14, "\\#"}};
+        test_combinations<ss::quote<'"'>, ss::escape<'\\', '#'>>(p, {","});
     }
 }

From ed6157fa9f2dc5249d4181835b2a62f077c30381 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 24 Jan 2021 01:45:54 +0100
Subject: [PATCH 10/20] add more splitter tests

---
 test/test_splitter.cpp | 220 ++++++++++++++++++++++++++++++-----------
 1 file changed, 160 insertions(+), 60 deletions(-)

diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index d910cfe..b08b315 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -28,11 +28,65 @@ std::vector<std::string> words(const ss::split_input& input) {
 }
 
 [[maybe_unused]] std::string concat(const std::vector<std::string>& v) {
-    std::string ret = "{";
+    std::string ret = "[";
     for (const auto& i : v) {
-        ret.append(i).append(" ");
+        ret.append(i).append(",");
     }
-    ret.back() = ('}');
+    ret.back() = (']');
+    return ret;
+}
+
+template <typename... Ts>
+size_t strings_size(const std::string& s, const Ts&... ss) {
+    if constexpr (sizeof...(Ts) > 0) {
+        return s.size() + strings_size(ss...);
+    }
+    return s.size();
+}
+
+template <typename... Ts>
+void concat_to(std::string& dst, const std::string& s, const Ts&... ss) {
+    dst.append(s);
+    if constexpr (sizeof...(Ts) > 0) {
+        concat_to(dst, ss...);
+    }
+}
+
+template <typename... Ts>
+std::string concat(const Ts&... ss) {
+    std::string ret;
+    ret.reserve(strings_size(ss...));
+    concat_to(ret, ss...);
+    return ret;
+}
+
+using case_type = std::vector<std::string>;
+auto spaced(const case_type& input, const std::string& s) {
+    case_type ret = input;
+    for (const auto& i : input) {
+        ret.push_back(concat(s, i, s));
+        ret.push_back(concat(i, s));
+        ret.push_back(concat(s, i));
+        ret.push_back(concat(s, s, i));
+        ret.push_back(concat(s, s, i, s, s));
+        ret.push_back(concat(i, s, s));
+    }
+
+    return ret;
+}
+
+auto spaced(const case_type& input, const std::string& s1,
+            const std::string& s2) {
+    case_type ret = input;
+    for (const auto& i : input) {
+        ret.push_back(concat(s1, i, s2));
+        ret.push_back(concat(s2, i, s1));
+        ret.push_back(concat(s2, s2, s1, s1, i));
+        ret.push_back(concat(i, s1, s2, s1, s2));
+        ret.push_back(concat(s1, s1, s1, i, s2, s2, s2));
+        ret.push_back(concat(s2, s2, s2, i, s1, s1, s1));
+    }
+
     return ret;
 }
 
@@ -43,9 +97,9 @@ std::vector<std::string> combinations(const std::vector<std::string>& v,
     }
     std::vector<std::string> ret;
     auto inner_combinations = combinations(v, delim, n - 1);
-    for (auto& i : v) {
-        for (auto& j : inner_combinations) {
-            ret.push_back(i + delim + j);
+    for (const auto& i : v) {
+        for (const auto& j : inner_combinations) {
+            ret.push_back(concat(i, delim, j));
         }
     }
     return ret;
@@ -55,23 +109,22 @@ std::vector<std::vector<std::string>> vector_combinations(
     const std::vector<std::string>& v, size_t n) {
     std::vector<std::vector<std::string>> ret;
     if (n <= 1) {
-        for (auto& i : v) {
+        for (const auto& i : v) {
             ret.push_back({i});
         }
         return ret;
     }
 
     auto inner_combinations = vector_combinations(v, n - 1);
-    for (auto& i : v) {
+    for (const auto& i : v) {
         for (auto j : inner_combinations) {
             j.insert(j.begin(), i);
-            ret.push_back(std::move(j));
+            ret.push_back(move(j));
         }
     }
     return ret;
 }
 
-using case_type = std::vector<std::string>;
 std::pair<std::vector<std::string>, std::vector<std::vector<std::string>>>
 make_combinations(const std::vector<std::string>& input,
                   const std::vector<std::string>& output,
@@ -90,36 +143,6 @@ make_combinations(const std::vector<std::string>& input,
 
     return {std::move(lines), std::move(expectations)};
 }
-
-auto spaced(const case_type& input, std::string s) {
-    case_type ret = input;
-    for (auto& i : input) {
-        ret.push_back(s + i + s);
-        ret.push_back(i + s);
-        ret.push_back(s + i);
-        ret.push_back(s + s + i);
-        ret.push_back(s + s + i + s);
-        ret.push_back(s + s + i + s + s);
-        ret.push_back(s + i + s + s);
-        ret.push_back(i + s + s);
-    }
-
-    return ret;
-}
-
-auto spaced(const case_type& input, std::string s1, std::string s2) {
-    case_type ret = input;
-    for (auto& i : input) {
-        ret.push_back(s1 + i + s2);
-        ret.push_back(s2 + i + s1);
-        ret.push_back(s2 + s2 + s1 + s1 + i);
-        ret.push_back(i + s1 + s2 + s1 + s2);
-        ret.push_back(s1 + s1 + s1 + i + s2 + s2 + s2);
-        ret.push_back(s2 + s2 + s2 + i + s1 + s1 + s1);
-    }
-
-    return ret;
-}
 } /* namespace */
 
 /* ********************************** */
@@ -293,30 +316,17 @@ TEST_CASE("testing splitter quote and trim") {
         test_combinations<ss::quote<'"'>, ss::trim<' '>>(p, delims);
     }
 
-    return;
-    case_type case8 = {R"(",")"};
-    case_type case9 = {R"("x,")"};
-    case_type case10 = {R"(",x")"};
-    case_type case11 = {R"("x,x")"};
-    case_type case12 = {R"(",,")"};
+    case_type case8 = spaced({R"(",")"}, " ", "\t");
+    case_type case9 = spaced({R"("x,")"}, " ", "\t");
+    case_type case10 = spaced({R"(",x")"}, " ", "\t");
+    case_type case11 = spaced({R"("x,x")"}, " ", "\t");
+    case_type case12 = spaced({R"(",,")"}, " ", "\t");
+
     {
         matches_type p{{case1, "\""}, {case3, ""},    {case8, ","},
                        {case9, "x,"}, {case10, ",x"}, {case11, "x,x"},
                        {case12, ",,"}};
-        test_combinations<ss::quote<'"'>>(p, {","});
-    }
-
-    case_type case13 = {R"("::")"};
-    case_type case14 = {R"("x::")"};
-    case_type case15 = {R"("::x")"};
-    case_type case16 = {R"("x::x")"};
-    case_type case17 = {R"("::::")"};
-
-    {
-        matches_type p{{case1, "\""},   {case3, ""},     {case13, "::"},
-                       {case14, "x::"}, {case15, "::x"}, {case16, "x::x"},
-                       {case17, "::::"}};
-        test_combinations<ss::quote<'"'>>(p, {"::"});
+        test_combinations<ss::quote<'"'>, ss::trim<' ', '\t'>>(p, {","});
     }
 }
 
@@ -367,3 +377,93 @@ TEST_CASE("testing splitter quote and escape") {
         test_combinations<ss::quote<'"'>, ss::escape<'\\', '#'>>(p, {","});
     }
 }
+
+TEST_CASE("testing splitter escape and trim") {
+    case_type case0 = spaced({R"(\ x\ )", R"(\ \x\ )"}, " ");
+    case_type case1 = spaced({R"(x)", R"(\x)"}, " ");
+    case_type case3 = spaced({R"(\\)"}, " ");
+
+    std::vector<std::string> delims = {",", "::", "\t", "\n"};
+
+    {
+        matches_type p{{case0, " x "}, {case1, "x"}, {case3, "\\"}};
+        test_combinations<ss::escape<'\\'>, ss::trim<' '>>(p, delims);
+    }
+
+    case_type case4 = spaced({R"(\,)"}, " ");
+    case_type case6 = spaced({R"(#,x)"}, " ");
+    case_type case7 = spaced({R"(x\,x)"}, " ");
+
+    {
+        matches_type p{{case1, "x"},
+                       {case3, "\\"},
+                       {case4, ","},
+                       {case6, ",x"},
+                       {case7, "x,x"}};
+        test_combinations<ss::escape<'\\', '#'>, ss::trim<' '>>(p, {","});
+    }
+
+    case_type case8 = spaced({R"(\:\:)"}, " ", "\t");
+    case_type case9 = spaced({R"(x\::x)"}, " ", "\t");
+
+    {
+        matches_type p{{case1, "x"},
+                       {case3, "\\"},
+                       {case8, "::"},
+                       {case9, "x::x"}};
+        test_combinations<ss::escape<'\\'>, ss::trim<' ', '\t'>>(p, {"::"});
+    }
+}
+
+TEST_CASE("testing splitter quote and escape and trim") {
+    auto guard = set_combinations_size(3);
+    case_type case1 = spaced({R"("\"")", R"(\")", R"("""")"}, " ");
+    case_type case2 =
+        spaced({R"("x\"x")", R"(x\"x)", R"(x"x)", R"("x""x")"}, " ");
+    case_type case3 = spaced({R"("")", R"()"}, " ");
+    case_type case4 = spaced({R"("x")", R"(x)"}, " ");
+    case_type case5 =
+        spaced({R"("\"\"")", R"("""""")", R"("\"""")", R"("""\"")"}, " ");
+    case_type case6 = spaced({R"("\\")", R"(\\)"}, " ");
+    case_type case7 = spaced({R"("xxxxxxxxxx")", R"(xxxxxxxxxx)"}, " ");
+
+    std::vector<std::string> delims = {"::", "\n"};
+
+    {
+        matches_type p{{case1, "\""},   {case2, "x\"x"}, {case3, ""},
+                       {case5, "\"\""}, {case6, "\\"},   {case7, "xxxxxxxxxx"}};
+        test_combinations<ss::quote<'"'>, ss::escape<'\\'>,
+                          ss::trim<' '>>(p, delims);
+    }
+
+    case_type case8 = spaced({R"('xxxxxxxxxx')", R"(xxxxxxxxxx)"}, " ", "\t");
+    case_type case9 = spaced({R"('')", R"()"}, " ", "\t");
+    case_type case10 = spaced({R"('#\')", R"(#\)"}, " ", "\t");
+    case_type case11 = spaced({R"('#'')", R"(#')", R"('''')"}, " ", "\t");
+    case_type case12 = spaced({R"('##')", R"(##)"}, " ", "\t");
+    {
+        matches_type p{{case8, "xxxxxxxxxx"},
+                       {case9, ""},
+                       {case10, "\\"},
+                       {case11, "'"},
+                       {case12, "#"}};
+        test_combinations<ss::quote<'\''>, ss::escape<'#'>,
+                          ss::trim<' ', '\t'>>(p, {","});
+    }
+
+    case_type case13 = spaced({R"("x,x")", R"(x\,x)", R"(x#,x)", R"("x\,x")",
+                               R"("x#,x")", R"("x#,x")"},
+                              " ", "\t");
+    case_type case14 =
+        spaced({R"("#\\#")", R"(#\\#)", R"(\\##)", R"("\\##")"}, " ", "\t");
+
+    {
+        matches_type p{{case1, "\""},
+                       {case2, "x\"x"},
+                       {case3, ""},
+                       {case13, "x,x"},
+                       {case14, "\\#"}};
+        test_combinations<ss::quote<'"'>, ss::escape<'\\', '#'>,
+                          ss::trim<' ', '\t'>>(p, {","});
+    }
+}

From 9302a25256107250114fc59293ed4a8633dc098d Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 24 Jan 2021 01:48:12 +0100
Subject: [PATCH 11/20] increase number of combinations for final splitter test

---
 test/test_splitter.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index b08b315..cff9852 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -416,7 +416,7 @@ TEST_CASE("testing splitter escape and trim") {
 }
 
 TEST_CASE("testing splitter quote and escape and trim") {
-    auto guard = set_combinations_size(3);
+    auto guard = set_combinations_size(4);
     case_type case1 = spaced({R"("\"")", R"(\")", R"("""")"}, " ");
     case_type case2 =
         spaced({R"("x\"x")", R"(x\"x)", R"(x"x)", R"("x""x")"}, " ");

From a5c921682417885b81c496be1b1fb85f9a9b0789 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Mon, 25 Jan 2021 00:16:55 +0100
Subject: [PATCH 12/20] refator splitter, add resplit functionality, write some
 unit tests

---
 include/ss/converter.hpp |  17 ++-
 include/ss/splitter.hpp  | 280 ++++++++++++++++++++++++++++-----------
 test/test_splitter.cpp   |  96 +++++++++++++-
 3 files changed, 306 insertions(+), 87 deletions(-)

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index f01a6d3..950bfeb 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -103,9 +103,6 @@ struct tied_class {
 template <typename... Ts>
 constexpr bool tied_class_v = tied_class<Ts...>::value;
 
-// the error can be set inside a string, or a bool
-enum class error_mode { error_string, error_bool };
-
 ////////////////
 // converter
 ////////////////
@@ -128,6 +125,12 @@ public:
     no_void_validator_tup_t<Ts...> convert(
         char* line, const std::string& delim = default_delimiter) {
         input_ = split(line, delim);
+        /* TODO
+        if (!splitter_.valid()) {
+            // set error
+            return {};
+        }
+        */
         return convert<Ts...>(input_);
     }
 
@@ -178,9 +181,13 @@ public:
                                                          : bool_error_ == false;
     }
 
-    const std::string& error_msg() const { return string_error_; }
+    const std::string& error_msg() const {
+        return string_error_;
+    }
 
-    void set_error_mode(error_mode mode) { error_mode_ = mode; }
+    void set_error_mode(error_mode mode) {
+        error_mode_ = mode;
+    }
 
     // 'splits' string by given delimiter, returns vector of pairs which
     // contain the beginnings and the ends of each column of the string
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index 9308dd9..9ad3b1b 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -5,6 +5,9 @@
 #include <string>
 #include <vector>
 
+// TODO remove
+#include <iostream>
+
 namespace ss {
 template <char... Cs>
 struct matcher {
@@ -31,8 +34,8 @@ public:
     static bool match(char c) = delete;
 };
 
-template <char... Cs>
-struct quote : matcher<Cs...> {};
+template <char C>
+struct quote : matcher<C> {};
 
 template <char... Cs>
 struct trim : matcher<Cs...> {};
@@ -79,24 +82,131 @@ struct setup {
 template <typename... Ts>
 struct setup<setup<Ts...>> : setup<Ts...> {};
 
-enum class state { begin, reading, quoting, finished };
-using range = std::pair<const char*, const char*>;
-
 using string_range = std::pair<const char*, const char*>;
 using split_input = std::vector<string_range>;
 
+// the error can be set inside a string, or a bool
+enum class error_mode { error_string, error_bool };
+
 template <typename... Ts>
 class splitter {
+private:
+    enum class state { begin, reading, quoting, finished };
+    constexpr static auto default_delimiter = ",";
+
     using quote = typename setup<Ts...>::quote;
     using trim = typename setup<Ts...>::trim;
     using escape = typename setup<Ts...>::escape;
 
-    bool match(const char* end_i, char delim) {
-        return *end_i == delim;
+    constexpr static auto is_const_line = !quote::enabled && !escape::enabled;
+    using line_ptr_type =
+        typename ternary<is_const_line, const char*, char*>::type;
+
+public:
+    bool valid() const {
+        return (error_mode_ == error_mode::error_string) ? string_error_.empty()
+                                                         : bool_error_ == false;
+    }
+
+    bool unterminated_quote() {
+        return unterminated_quote_;
+    }
+
+    const std::string& error_msg() const {
+        return string_error_;
+    }
+
+    void set_error_mode(error_mode mode) {
+        error_mode_ = mode;
+    }
+
+    split_input& split(line_ptr_type new_line,
+                       const std::string& delimiter = default_delimiter) {
+        output_.clear();
+        return resplit(new_line, -1, delimiter);
+    }
+
+    void adjust_ranges(const char* old_line) {
+        for (auto& [begin, end] : output_) {
+            begin = begin - old_line + line_;
+            end = end - old_line + line_;
+        }
+    }
+
+    split_input& resplit(line_ptr_type new_line, ssize_t new_size,
+                         const std::string& delimiter = default_delimiter) {
+        clear_error();
+        line_ = new_line;
+
+        // resplitting, continue from last slice
+        if (!output_.empty()) {
+            const auto& last = std::prev(output_.end());
+            const auto [old_line, old_begin] = *last;
+            size_t begin = old_begin - old_line - 1;
+            output_.pop_back();
+            adjust_ranges(old_line);
+
+            // safety measure
+            if (new_size != -1 && static_cast<size_t>(new_size) < begin) {
+                set_error_invalid_resplit();
+                return output_;
+            }
+
+            line_ += begin;
+        }
+
+        return split_impl_select_delim(delimiter);
+    }
+
+private:
+    ////////////////
+    // error
+    ////////////////
+
+    void clear_error() {
+        string_error_.clear();
+        bool_error_ = false;
+        unterminated_quote_ = false;
+    }
+
+    void set_error_empty_delimiter() {
+        if (error_mode_ == error_mode::error_string) {
+            string_error_.clear();
+            string_error_.append("empty delimiter");
+        } else {
+            bool_error_ = true;
+        }
+    }
+
+    void set_error_unterminated_quote() {
+        unterminated_quote_ = true;
+        if (error_mode_ == error_mode::error_string) {
+            string_error_.clear();
+            string_error_.append("unterminated quote");
+        } else {
+            bool_error_ = true;
+        }
+    }
+
+    void set_error_invalid_resplit() {
+        if (error_mode_ == error_mode::error_string) {
+            string_error_.clear();
+            string_error_.append("invalid_resplit");
+        } else {
+            bool_error_ = true;
+        }
+    }
+
+    ////////////////
+    // matching
+    ////////////////
+
+    bool match(const char* const curr, char delim) {
+        return *curr == delim;
     };
 
-    bool match(const char* end_i, const std::string& delim) {
-        return strncmp(end_i, delim.c_str(), delim.size()) == 0;
+    bool match(const char* const curr, const std::string& delim) {
+        return strncmp(curr, delim.c_str(), delim.size()) == 0;
     };
 
     size_t delimiter_size(char) {
@@ -107,7 +217,7 @@ class splitter {
         return delim.size();
     }
 
-    void trim_if_enabled(char*& curr) {
+    void trim_if_enabled(line_ptr_type& curr) {
         if constexpr (trim::enabled) {
             while (trim::match(*curr)) {
                 ++curr;
@@ -115,89 +225,88 @@ class splitter {
         }
     }
 
-    void shift_if_escaped(char*& curr_i) {
+    void shift_if_escaped(line_ptr_type& curr) {
         if constexpr (escape::enabled) {
-            if (escape::match(*curr_i)) {
-                *curr = end[1];
-                ++end;
+            if (escape::match(*curr)) {
+                *curr_ = end_[1];
+                ++end_;
             }
         }
     }
 
-    void shift() {
-        if constexpr (escape::enabled || quote::enabled) {
-            *curr = *end;
-        }
-        ++end;
-        ++curr;
-    }
-
-    void shift(size_t n) {
-        if constexpr (escape::enabled || quote::enabled) {
-            memcpy(curr, end, n);
-        }
-        end += n;
-        curr += n;
-    }
-
     template <typename Delim>
-    std::tuple<size_t, bool> match_delimiter(char* begin, const Delim& delim) {
-        char* end_i = begin;
+    std::tuple<size_t, bool> match_delimiter(line_ptr_type begin,
+                                             const Delim& delim) {
+        line_ptr_type end = begin;
 
-        trim_if_enabled(end_i);
+        trim_if_enabled(end);
 
         // just spacing
-        if (*end_i == '\0') {
+        if (*end == '\0') {
             return {0, false};
         }
 
         // not a delimiter
-        if (!match(end_i, delim)) {
-            shift_if_escaped(end_i);
-            return {1 + end_i - begin, false};
+        if (!match(end, delim)) {
+            shift_if_escaped(end);
+            return {1 + end - begin, false};
         }
 
-        end_i += delimiter_size(delim);
-        trim_if_enabled(end_i);
+        end += delimiter_size(delim);
+        trim_if_enabled(end);
 
         // delimiter
-        return {end_i - begin, true};
+        return {end - begin, true};
+    }
+
+    ////////////////
+    // matching
+    ////////////////
+
+    void shift() {
+        if constexpr (!is_const_line) {
+            *curr_ = *end_;
+        }
+        ++end_;
+        ++curr_;
+    }
+
+    void shift(size_t n) {
+        if constexpr (!is_const_line) {
+            memcpy(curr_, end_, n);
+        }
+        end_ += n;
+        curr_ += n;
     }
 
     void push_and_start_next(size_t n) {
-        output_.emplace_back(begin, curr);
-        begin = end + n;
+        output_.emplace_back(begin_, curr_);
+        begin_ = end_ + n;
         state_ = state::begin;
     }
 
-public:
-    bool valid() {
-        return error_.empty();
-    }
-
-    split_input& split(char* new_line, const std::string& d = ",") {
-        line = new_line;
-        output_.clear();
-        switch (d.size()) {
+    split_input& split_impl_select_delim(
+        const std::string& delimiter = default_delimiter) {
+        switch (delimiter.size()) {
         case 0:
-            // set error
+            set_error_empty_delimiter();
             return output_;
         case 1:
-            return split_impl(d[0]);
+            return split_impl(delimiter[0]);
         default:
-            return split_impl(d);
+            return split_impl(delimiter);
         }
     }
 
     template <typename Delim>
-    std::vector<range>& split_impl(const Delim& delim) {
+    split_input& split_impl(const Delim& delim) {
         state_ = state::begin;
-        begin = line;
+        begin_ = line_;
 
-        trim_if_enabled(begin);
+        trim_if_enabled(begin_);
 
         while (state_ != state::finished) {
-            curr = end = begin;
+            curr_ = end_ = begin_;
             switch (state_) {
             case (state::begin):
                 state_begin();
@@ -216,10 +325,14 @@ public:
         return output_;
     }
 
+    ////////////////
+    // states
+    ////////////////
+
     void state_begin() {
         if constexpr (quote::enabled) {
-            if (quote::match(*begin)) {
-                ++begin;
+            if (quote::match(*begin_)) {
+                ++begin_;
                 state_ = state::quoting;
                 return;
             }
@@ -230,13 +343,13 @@ public:
     template <typename Delim>
     void state_reading(const Delim& delim) {
         while (true) {
-            auto [width, valid] = match_delimiter(end, delim);
+            auto [width, valid] = match_delimiter(end_, delim);
 
             // not a delimiter
             if (!valid) {
                 if (width == 0) {
                     // eol
-                    output_.emplace_back(begin, curr);
+                    output_.emplace_back(begin_, curr_);
                     state_ = state::finished;
                     break;
                 } else {
@@ -255,16 +368,16 @@ public:
     void state_quoting(const Delim& delim) {
         if constexpr (quote::enabled) {
             while (true) {
-                if (quote::match(*end)) {
+                if (quote::match(*end_)) {
                     // double quote
                     // eg: ...,"hel""lo,... -> hel"lo
-                    if (quote::match(end[1])) {
-                        ++end;
+                    if (quote::match(end_[1])) {
+                        ++end_;
                         shift();
                         continue;
                     }
 
-                    auto [width, valid] = match_delimiter(end + 1, delim);
+                    auto [width, valid] = match_delimiter(end_ + 1, delim);
 
                     // not a delimiter
                     if (!valid) {
@@ -272,10 +385,11 @@ public:
                             // eol
                             // eg: ...,"hello"   \0 -> hello
                             // eg no trim: ...,"hello"\0 -> hello
-                            output_.emplace_back(begin, curr);
+                            output_.emplace_back(begin_, curr_);
                         } else {
                             // missmatched quote
                             // eg: ...,"hel"lo,... -> error
+                            // or not
                         }
                         state_ = state::finished;
                         break;
@@ -287,8 +401,8 @@ public:
                 }
 
                 if constexpr (escape::enabled) {
-                    if (escape::match(*end)) {
-                        ++end;
+                    if (escape::match(*end_)) {
+                        ++end_;
                         shift();
                         continue;
                     }
@@ -296,27 +410,31 @@ public:
 
                 // unterminated error
                 // eg: ..."hell\0 -> quote not terminated
-                if (*end == '\0') {
-                    *curr = '\0';
+                if (*end_ == '\0') {
+                    set_error_unterminated_quote();
+                    output_.emplace_back(line_, begin_);
                     state_ = state::finished;
                     break;
                 }
                 shift();
             }
-        } else {
-            // set error impossible scenario
-            state_ = state::finished;
         }
     }
 
-private:
-    std::vector<range> output_;
-    std::string error_ = "";
+    ////////////////
+    // members
+    ////////////////
+
+    std::vector<string_range> output_;
+    std::string string_error_;
+    bool bool_error_;
+    bool unterminated_quote_;
+    enum error_mode error_mode_ { error_mode::error_bool };
+    line_ptr_type begin_;
+    line_ptr_type curr_;
+    line_ptr_type end_;
+    line_ptr_type line_;
     state state_;
-    char* curr;
-    char* end;
-    char* begin;
-    char* line;
 };
 
 } /* ss */
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index cff9852..3411714 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -416,7 +416,7 @@ TEST_CASE("testing splitter escape and trim") {
 }
 
 TEST_CASE("testing splitter quote and escape and trim") {
-    auto guard = set_combinations_size(4);
+    auto guard = set_combinations_size(3);
     case_type case1 = spaced({R"("\"")", R"(\")", R"("""")"}, " ");
     case_type case2 =
         spaced({R"("x\"x")", R"(x\"x)", R"(x"x)", R"("x""x")"}, " ");
@@ -467,3 +467,97 @@ TEST_CASE("testing splitter quote and escape and trim") {
                           ss::trim<' ', '\t'>>(p, {","});
     }
 }
+
+TEST_CASE("testing splitter constnes if quoting and escaping are disabled") {
+    // to compile is enough
+    return;
+    const char* const line{};
+    ss::splitter s1;
+    ss::splitter<ss::trim<' '>> s2;
+    s1.split(line);
+    s2.split(line);
+}
+
+TEST_CASE("testing error mode") {
+
+    {
+        // empty delimiter
+        ss::splitter s;
+        s.split(buff("just,some,strings"), "");
+        CHECK(!s.valid());
+        CHECK(!s.unterminated_quote());
+        CHECK(s.error_msg().empty());
+
+        s.set_error_mode(ss::error_mode::error_string);
+        s.split(buff("just,some,strings"), "");
+        CHECK(!s.valid());
+        CHECK(!s.unterminated_quote());
+        CHECK(!s.error_msg().empty());
+    }
+
+    {
+        // unterminated quote
+        ss::splitter<ss::quote<'"'>> s;
+        s.split(buff("\"just"));
+        CHECK(!s.valid());
+        CHECK(s.unterminated_quote());
+        CHECK(s.error_msg().empty());
+
+        s.set_error_mode(ss::error_mode::error_string);
+        s.split(buff("\"just"));
+        CHECK(!s.valid());
+        CHECK(s.unterminated_quote());
+        CHECK(!s.error_msg().empty());
+    }
+}
+
+template <typename Splitter>
+auto expect_unterminated_quote(Splitter& s, const std::string& line) {
+    auto vec = s.split(buff(line.c_str()));
+    CHECK(!s.valid());
+    CHECK(s.unterminated_quote());
+    return vec;
+}
+
+TEST_CASE("testing unterminated quote") {
+    {
+        ss::splitter<ss::quote<'"'>> s;
+        auto vec = expect_unterminated_quote(s, "\"just");
+        CHECK(vec.size() == 1);
+
+        char new_line[] = R"("just",strings)";
+        vec = s.resplit(new_line, strlen(new_line));
+        CHECK(s.valid());
+        CHECK(!s.unterminated_quote());
+        std::vector<std::string> expected{"just", "strings"};
+        CHECK(words(vec) == expected);
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>> s;
+        auto vec = expect_unterminated_quote(s, "just,some,\"random");
+        std::vector<std::string> expected{"just", "some", "just,some,\""};
+        CHECK(words(vec) == expected);
+
+        char new_line[] = R"(just,some,"random",strings)";
+        vec = s.resplit(new_line, strlen(new_line));
+        CHECK(s.valid());
+        CHECK(!s.unterminated_quote());
+        expected = {"just", "some", "random", "strings"};
+        CHECK(words(vec) == expected);
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>> s;
+        auto vec = expect_unterminated_quote(s, R"("just","some","ran)");
+        std::vector<std::string> expected{"just", "some", R"("just","some",")"};
+        CHECK(words(vec) == expected);
+
+        char new_line[] = R"("just","some","ran,dom","strings")";
+        vec = s.resplit(new_line, strlen(new_line));
+        CHECK(s.valid());
+        CHECK(!s.unterminated_quote());
+        expected = {"just", "some", "ran,dom", "strings"};
+        CHECK(words(vec) == expected);
+    }
+}

From 1bf6b9d5952bb98f39457c35a538c4a3a74da5ea Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sat, 30 Jan 2021 21:52:32 +0100
Subject: [PATCH 13/20] write unit tests for resplit, fix some issues with
 resplit

---
 include/ss/splitter.hpp |  11 ++--
 test/test_helpers.hpp   |   5 ++
 test/test_splitter.cpp  | 125 +++++++++++++++++++++++++++++++++++++---
 3 files changed, 129 insertions(+), 12 deletions(-)

diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index 9ad3b1b..917bdcb 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -135,11 +135,10 @@ public:
 
     split_input& resplit(line_ptr_type new_line, ssize_t new_size,
                          const std::string& delimiter = default_delimiter) {
-        clear_error();
         line_ = new_line;
 
         // resplitting, continue from last slice
-        if (!output_.empty()) {
+        if (!output_.empty() && unterminated_quote()) {
             const auto& last = std::prev(output_.end());
             const auto [old_line, old_begin] = *last;
             size_t begin = old_begin - old_line - 1;
@@ -152,7 +151,7 @@ public:
                 return output_;
             }
 
-            line_ += begin;
+            begin_ = line_ + begin;
         }
 
         return split_impl_select_delim(delimiter);
@@ -287,6 +286,7 @@ private:
 
     split_input& split_impl_select_delim(
         const std::string& delimiter = default_delimiter) {
+        clear_error();
         switch (delimiter.size()) {
         case 0:
             set_error_empty_delimiter();
@@ -301,7 +301,10 @@ private:
     template <typename Delim>
     split_input& split_impl(const Delim& delim) {
         state_ = state::begin;
-        begin_ = line_;
+
+        if (output_.empty()) {
+            begin_ = line_;
+        }
 
         trim_if_enabled(begin_);
 
diff --git a/test/test_helpers.hpp b/test/test_helpers.hpp
index 87abd8a..903cde8 100644
--- a/test/test_helpers.hpp
+++ b/test/test_helpers.hpp
@@ -17,6 +17,11 @@ public:
         strcpy(data_, data);
         return data_;
     }
+
+    char* append(const char* data) {
+        strcat(data_, data);
+        return data_;
+    }
 };
 
 [[maybe_unused]] inline buffer buff;
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index 3411714..c2376ef 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -525,7 +525,7 @@ TEST_CASE("testing unterminated quote") {
         auto vec = expect_unterminated_quote(s, "\"just");
         CHECK(vec.size() == 1);
 
-        char new_line[] = R"("just",strings)";
+        auto new_line = buff.append(R"(",strings)");
         vec = s.resplit(new_line, strlen(new_line));
         CHECK(s.valid());
         CHECK(!s.unterminated_quote());
@@ -539,7 +539,7 @@ TEST_CASE("testing unterminated quote") {
         std::vector<std::string> expected{"just", "some", "just,some,\""};
         CHECK(words(vec) == expected);
 
-        char new_line[] = R"(just,some,"random",strings)";
+        auto new_line = buff.append(R"(",strings)");
         vec = s.resplit(new_line, strlen(new_line));
         CHECK(s.valid());
         CHECK(!s.unterminated_quote());
@@ -547,17 +547,126 @@ TEST_CASE("testing unterminated quote") {
         CHECK(words(vec) == expected);
     }
 
+    {
+        ss::splitter<ss::quote<'"'>> s;
+        auto vec = expect_unterminated_quote(s, R"("just","some","ran"")");
+        std::vector<std::string> expected{"just", "some", R"("just","some",")"};
+        CHECK(words(vec) == expected);
+
+        auto new_line = buff.append(R"(,dom","strings")");
+        vec = s.resplit(new_line, strlen(new_line));
+        CHECK(s.valid());
+        CHECK(!s.unterminated_quote());
+        expected = {"just", "some", "ran\",dom", "strings"};
+        CHECK(words(vec) == expected);
+    }
+
     {
         ss::splitter<ss::quote<'"'>> s;
         auto vec = expect_unterminated_quote(s, R"("just","some","ran)");
         std::vector<std::string> expected{"just", "some", R"("just","some",")"};
         CHECK(words(vec) == expected);
 
-        char new_line[] = R"("just","some","ran,dom","strings")";
-        vec = s.resplit(new_line, strlen(new_line));
-        CHECK(s.valid());
-        CHECK(!s.unterminated_quote());
-        expected = {"just", "some", "ran,dom", "strings"};
-        CHECK(words(vec) == expected);
+        {
+            auto new_line = buff.append(R"(,dom)");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(!s.valid());
+            CHECK(s.unterminated_quote());
+            CHECK(words(vec) == expected);
+        }
+
+        {
+            auto new_line = buff.append(R"(",strings)");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(s.valid());
+            CHECK(!s.unterminated_quote());
+            expected = {"just", "some", "ran,dom", "strings"};
+            CHECK(words(vec) == expected);
+        }
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+        auto vec = expect_unterminated_quote(s, R"("just\"some","ra)");
+        std::vector<std::string> expected{"just\"some"};
+        auto w = words(vec);
+        w.pop_back();
+        CHECK(w == expected);
+        {
+            auto new_line = buff.append(R"(n,dom",str\"ings)");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(s.valid());
+            CHECK(!s.unterminated_quote());
+            expected = {"just\"some", "ran,dom", "str\"ings"};
+            CHECK(words(vec) == expected);
+        }
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+        auto vec = expect_unterminated_quote(s, R"("just\"some","ra"")");
+        std::vector<std::string> expected{"just\"some"};
+        auto w = words(vec);
+        w.pop_back();
+        CHECK(w == expected);
+        {
+            auto new_line = buff.append(R"(n,dom",str\"ings)");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(s.valid());
+            CHECK(!s.unterminated_quote());
+            expected = {"just\"some", "ra\"n,dom", "str\"ings"};
+            CHECK(words(vec) == expected);
+        }
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+        auto vec = expect_unterminated_quote(s, R"("just\"some","ra\")");
+        std::vector<std::string> expected{"just\"some"};
+        auto w = words(vec);
+        w.pop_back();
+        CHECK(w == expected);
+        {
+            auto new_line = buff.append(R"(n,dom",str\"ings)");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(s.valid());
+            CHECK(!s.unterminated_quote());
+            expected = {"just\"some", "ra\"n,dom", "str\"ings"};
+            CHECK(words(vec) == expected);
+        }
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>, ss::trim<' '>> s;
+        auto vec = expect_unterminated_quote(s, R"(  "just" ,some,  "ra )");
+        std::vector<std::string> expected{"just", "some"};
+        auto w = words(vec);
+        w.pop_back();
+        CHECK(w == expected);
+        {
+            auto new_line = buff.append(R"( n,dom"  , strings   )");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(s.valid());
+            CHECK(!s.unterminated_quote());
+            expected = {"just", "some", "ra  n,dom", "strings"};
+            CHECK(words(vec) == expected);
+        }
+    }
+
+    {
+        ss::splitter<ss::quote<'"'>, ss::trim<' '>, ss::escape<'\\'>> s;
+        auto vec = expect_unterminated_quote(s, R"(  "ju\"st" ,some,  "ra \")");
+        std::vector<std::string> expected{"ju\"st", "some"};
+        auto w = words(vec);
+        w.pop_back();
+        CHECK(w == expected);
+        {
+            auto new_line = buff.append(R"( n,dom"  , strings   )");
+            vec = s.resplit(new_line, strlen(new_line));
+            CHECK(s.valid());
+            CHECK(!s.unterminated_quote());
+            expected = {"ju\"st", "some", "ra \" n,dom", "strings"};
+            CHECK(words(vec) == expected);
+        }
     }
 }

From 035e27c5ab6d8c62062721c087c29eb5c1e33f6a Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sun, 31 Jan 2021 23:08:46 +0100
Subject: [PATCH 14/20] add converter tests with quote trim and escape, enable
 resplit on converter, make parser handle multi-line csv, add unit tests

---
 include/ss/converter.hpp |  18 ++++-
 include/ss/parser.hpp    | 137 ++++++++++++++++++++++++++++++++-------
 include/ss/splitter.hpp  |  12 ++--
 test/test_converter.cpp  |  50 +++++++++++++-
 test/test_parser.cpp     |  69 ++++++++++++++++++++
 5 files changed, 249 insertions(+), 37 deletions(-)

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index 950bfeb..2e95ac9 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -110,12 +110,14 @@ constexpr bool tied_class_v = tied_class<Ts...>::value;
 template <typename... Matchers>
 class converter {
     constexpr static auto default_delimiter = ",";
+    using line_ptr_type = typename splitter<Matchers...>::line_ptr_type;
 
 public:
     // parses line with given delimiter, returns a 'T' object created with
     // extracted values of type 'Ts'
     template <typename T, typename... Ts>
-    T convert_object(char* line, const std::string& delim = default_delimiter) {
+    T convert_object(line_ptr_type line,
+                     const std::string& delim = default_delimiter) {
         return to_object<T>(convert<Ts...>(line, delim));
     }
 
@@ -123,7 +125,7 @@ public:
     // extracted values of type 'Ts'
     template <typename... Ts>
     no_void_validator_tup_t<Ts...> convert(
-        char* line, const std::string& delim = default_delimiter) {
+        line_ptr_type line, const std::string& delim = default_delimiter) {
         input_ = split(line, delim);
         /* TODO
         if (!splitter_.valid()) {
@@ -181,6 +183,10 @@ public:
                                                          : bool_error_ == false;
     }
 
+    bool unterminated_quote() const {
+        return splitter_.unterminated_quote();
+    }
+
     const std::string& error_msg() const {
         return string_error_;
     }
@@ -191,7 +197,7 @@ public:
 
     // 'splits' string by given delimiter, returns vector of pairs which
     // contain the beginnings and the ends of each column of the string
-    const split_input& split(char* line,
+    const split_input& split(line_ptr_type line,
                              const std::string& delim = default_delimiter) {
         input_.clear();
         if (line[0] == '\0') {
@@ -202,6 +208,12 @@ public:
         return input_;
     }
 
+    const split_input& resplit(line_ptr_type new_line, ssize_t new_size,
+                               const std::string& delim = default_delimiter) {
+        input_ = splitter_.resplit(new_line, new_size, delim);
+        return input_;
+    }
+
 private:
     ////////////////
     // error
diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index 4aafc22..4f7dcd6 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -9,6 +9,9 @@
 #include <string>
 #include <vector>
 
+// TODO remove
+#include <iostream>
+
 namespace ss {
 
 template <typename... Matchers>
@@ -40,7 +43,7 @@ public:
 
     void set_error_mode(error_mode mode) {
         error_mode_ = mode;
-        buff_.set_error_mode(mode);
+        reader_.set_error_mode(mode);
     }
 
     const std::string& error_msg() const {
@@ -52,7 +55,7 @@ public:
     }
 
     bool ignore_next() {
-        return buff_.read(file_);
+        return reader_.read(file_);
     }
 
     template <typename T, typename... Ts>
@@ -62,16 +65,16 @@ public:
 
     template <typename T, typename... Ts>
     no_void_validator_tup_t<T, Ts...> get_next() {
-        buff_.update();
+        reader_.update();
         clear_error();
         if (eof_) {
             set_error_eof_reached();
             return {};
         }
 
-        auto value = buff_.get_converter().template convert<T, Ts...>();
+        auto value = reader_.get_converter().template convert<T, Ts...>();
 
-        if (!buff_.get_converter().valid()) {
+        if (!reader_.get_converter().valid()) {
             set_error_invalid_conversion();
         }
 
@@ -160,8 +163,8 @@ public:
         no_void_validator_tup_t<U, Us...> try_same() {
             parser_.clear_error();
             auto value =
-                parser_.buff_.get_converter().template convert<U, Us...>();
-            if (!parser_.buff_.get_converter().valid()) {
+                parser_.reader_.get_converter().template convert<U, Us...>();
+            if (!parser_.reader_.get_converter().valid()) {
                 parser_.set_error_invalid_conversion();
             }
             return value;
@@ -244,40 +247,124 @@ private:
     // line reading
     ////////////////
 
-    class buffer {
+    class reader {
         char* buffer_{nullptr};
         char* next_line_buffer_{nullptr};
+        char* helper_buffer_{nullptr};
 
         converter<Matchers...> converter_;
         converter<Matchers...> next_line_converter_;
 
         size_t size_{0};
+        size_t helper_size_{0};
         const std::string& delim_;
 
-    public:
-        buffer(const std::string& delimiter) : delim_{delimiter} {
+        bool crlf;
+
+        bool escaped_eol(size_t size) {
+            // escaped new line
+            if constexpr (setup<Matchers...>::escape::enabled) {
+                const char* curr;
+                for (curr = next_line_buffer_ + size - 1;
+                     curr >= next_line_buffer_ &&
+                     setup<Matchers...>::escape::match(*curr);
+                     --curr) {
+                }
+                return (next_line_buffer_ - curr + size) % 2 == 0;
+            }
+
+            return false;
         }
 
-        ~buffer() {
-            free(buffer_);
-            free(next_line_buffer_);
+        bool unterminated_quote() {
+            // unterimated quote
+            if constexpr (ss::setup<Matchers...>::quote::enabled) {
+                if (next_line_converter_.unterminated_quote()) {
+                    return true;
+                }
+            }
+            return false;
         }
 
-        bool read(FILE* file) {
-            ssize_t size = getline(&next_line_buffer_, &size_, file);
-            size_t string_end = size - 1;
+        void undo_remove_eol(size_t& string_end) {
+            if (crlf) {
+                memcpy(next_line_buffer_ + string_end, "\r\n\0", 3);
+                string_end += 2;
+            } else {
+                memcpy(next_line_buffer_ + string_end, "\n\0", 2);
+                string_end += 1;
+            }
+        }
 
-            if (size == -1) {
+        size_t remove_eol(char*& buffer, size_t size) {
+            size_t new_size = size - 1;
+            if (size >= 2 && buffer[size - 2] == '\r') {
+                crlf = true;
+                new_size--;
+            } else {
+                crlf = false;
+            }
+
+            buffer[new_size] = '\0';
+            return new_size;
+        }
+
+        void realloc_concat(char*& first, size_t& first_size,
+                            const char* const second, size_t second_size) {
+            first = static_cast<char*>(realloc(static_cast<void*>(first),
+                                               first_size + second_size + 2));
+
+            memcpy(first + first_size, second, second_size + 1);
+            first_size += second_size;
+        }
+
+        bool append_line(FILE* file, char*& dst_buffer, size_t& dst_size) {
+            undo_remove_eol(dst_size);
+
+            ssize_t ssize = getline(&helper_buffer_, &helper_size_, file);
+            if (ssize == -1) {
                 return false;
             }
 
-            if (size >= 2 && next_line_buffer_[size - 2] == '\r') {
-                string_end--;
+            size_t size = remove_eol(helper_buffer_, ssize);
+            realloc_concat(dst_buffer, dst_size, helper_buffer_, size);
+            return true;
+        }
+
+    public:
+        reader(const std::string& delimiter) : delim_{delimiter} {
+        }
+
+        ~reader() {
+            free(buffer_);
+            free(next_line_buffer_);
+            free(helper_buffer_);
+        }
+
+        bool read(FILE* file) {
+            ssize_t ssize = getline(&next_line_buffer_, &size_, file);
+
+            if (ssize == -1) {
+                return false;
+            }
+
+            size_t size = remove_eol(next_line_buffer_, ssize);
+
+            while (escaped_eol(size)) {
+                if (!append_line(file, next_line_buffer_, size)) {
+                    return false;
+                }
             }
 
-            next_line_buffer_[string_end] = '\0';
             next_line_converter_.split(next_line_buffer_, delim_);
 
+            while (unterminated_quote()) {
+                if (!append_line(file, next_line_buffer_, size)) {
+                    return false;
+                }
+                next_line_converter_.resplit(next_line_buffer_, size);
+            }
+
             return true;
         }
 
@@ -290,7 +377,7 @@ private:
             return converter_;
         }
 
-        const char* get() const {
+        const char* get_buffer() const {
             return buffer_;
         }
 
@@ -301,7 +388,7 @@ private:
     };
 
     void read_line() {
-        eof_ = !buff_.read(file_);
+        eof_ = !reader_.read(file_);
         ++line_number_;
     }
 
@@ -341,9 +428,9 @@ private:
                 .append(" ")
                 .append(std::to_string(line_number_))
                 .append(": ")
-                .append(buff_.get_converter().error_msg())
+                .append(reader_.get_converter().error_msg())
                 .append(": \"")
-                .append(buff_.get())
+                .append(reader_.get_buffer())
                 .append("\"");
         } else {
             bool_error_ = true;
@@ -360,7 +447,7 @@ private:
     bool bool_error_{false};
     error_mode error_mode_{error_mode::error_bool};
     FILE* file_{nullptr};
-    buffer buff_{delim_};
+    reader reader_{delim_};
     size_t line_number_{0};
     bool eof_{false};
 };
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index 917bdcb..e73b825 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -5,9 +5,6 @@
 #include <string>
 #include <vector>
 
-// TODO remove
-#include <iostream>
-
 namespace ss {
 template <char... Cs>
 struct matcher {
@@ -99,16 +96,17 @@ private:
     using escape = typename setup<Ts...>::escape;
 
     constexpr static auto is_const_line = !quote::enabled && !escape::enabled;
+
+public:
     using line_ptr_type =
         typename ternary<is_const_line, const char*, char*>::type;
 
-public:
     bool valid() const {
         return (error_mode_ == error_mode::error_string) ? string_error_.empty()
                                                          : bool_error_ == false;
     }
 
-    bool unterminated_quote() {
+    bool unterminated_quote() const {
         return unterminated_quote_;
     }
 
@@ -120,7 +118,7 @@ public:
         error_mode_ = mode;
     }
 
-    split_input& split(line_ptr_type new_line,
+    const split_input& split(line_ptr_type new_line,
                        const std::string& delimiter = default_delimiter) {
         output_.clear();
         return resplit(new_line, -1, delimiter);
@@ -133,7 +131,7 @@ public:
         }
     }
 
-    split_input& resplit(line_ptr_type new_line, ssize_t new_size,
+    const split_input& resplit(line_ptr_type new_line, ssize_t new_size,
                          const std::string& delimiter = default_delimiter) {
         line_ = new_line;
 
diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index 5bcab32..fa2fab7 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -46,8 +46,7 @@ TEST_CASE("testing valid conversions") {
         CHECK(tup == 5);
     }
     {
-        // TODO make \t -> ' '
-        auto tup = c.convert<void, int, void>(buff("junk\t5\tjunk"), "\t");
+        auto tup = c.convert<void, int, void>(buff("junk 5 junk"), " ");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
@@ -398,3 +397,50 @@ TEST_CASE("testing error mode") {
     CHECK(!c.valid());
     CHECK(!c.error_msg().empty());
 }
+
+TEST_CASE("testing converter with quotes spacing and escaping") {
+    {
+        ss::converter c;
+
+        auto tup = c.convert<std::string, std::string, std::string>(
+            R"("just","some","strings")");
+        REQUIRE(c.valid());
+        CHECK(tup == std::make_tuple("\"just\"", "\"some\"", "\"strings\""));
+    }
+
+    {
+        ss::converter<ss::quote<'"'>> c;
+
+        auto tup = c.convert<std::string, std::string, double, char>(
+            buff(R"("just",some,"12.3","a")"));
+        REQUIRE(c.valid());
+        CHECK(tup == std::make_tuple("just", "some", 12.3, 'a'));
+    }
+
+    {
+        ss::converter<ss::trim<' '>> c;
+
+        auto tup = c.convert<std::string, std::string, double, char>(
+            R"(    just  ,  some   ,  12.3 ,a     )");
+        REQUIRE(c.valid());
+        CHECK(tup == std::make_tuple("just", "some", 12.3, 'a'));
+    }
+
+    {
+        ss::converter<ss::escape<'\\'>> c;
+
+        auto tup =
+            c.convert<std::string, std::string>(buff(R"(ju\,st,strings)"));
+        REQUIRE(c.valid());
+        CHECK(tup == std::make_tuple("ju,st", "strings"));
+    }
+
+    {
+        ss::converter<ss::escape<'\\'>, ss::trim<' '>, ss::quote<'"'>> c;
+
+        auto tup = c.convert<std::string, std::string, double, std::string>(
+            buff(R"(  ju\,st  ,  "so,me"  ,   12.34     ,   "str""ings")"));
+        REQUIRE(c.valid());
+        CHECK(tup == std::make_tuple("ju,st", "so,me", 12.34, "str\"ings"));
+    }
+}
diff --git a/test/test_parser.cpp b/test/test_parser.cpp
index f9518d0..905f1a2 100644
--- a/test/test_parser.cpp
+++ b/test/test_parser.cpp
@@ -514,3 +514,72 @@ TEST_CASE("testing error mode") {
     CHECK(!p.valid());
     CHECK(!p.error_msg().empty());
 }
+
+std::string no_quote(const std::string& s) {
+    if (!s.empty() && s[0] == '"') {
+        return {std::next(begin(s)), std::prev(end(s))};
+    }
+    return s;
+}
+
+TEST_CASE("testing csv on multiple lines with quotes") {
+    unique_file_name f;
+    std::vector<X> data = {{1, 2, "\"x\nx\nx\""}, {3, 4, "\"y\ny\ny\""},
+                           {5, 6, "\"z\nz\""},    {7, 8, "\"u\"\"\""},
+                           {9, 10, "v"},          {11, 12, "\"w\n\""}};
+    make_and_write(f.name, data);
+    for (auto& [_, __, s] : data) {
+        s = no_quote(s);
+        if (s[0] == 'u') {
+            s = "u\"";
+        }
+    }
+
+    ss::parser<ss::quote<'"'>> p{f.name, ","};
+    p.set_error_mode(ss::error_mode::error_string);
+    std::vector<X> i;
+
+    while (!p.eof()) {
+        auto a = p.get_next<int, double, std::string>();
+        auto [x, y, z] = a;
+        std::cout << "=====================" << std::endl;
+        std::cout << x << ' ' << y << ' ' << z << std::endl;
+        i.emplace_back(ss::to_object<X>(a));
+    }
+
+    CHECK(std::equal(i.begin(), i.end(), data.begin()));
+}
+
+std::string no_escape(std::string& s) {
+    s.erase(std::remove(begin(s), end(s), '\\'), end(s));
+    return s;
+}
+
+TEST_CASE("testing csv on multiple lines with escapes") {
+    unique_file_name f;
+    std::vector<X> data = {{1, 2, "x\\\nx\\\nx"}, {3, 4, "y\\\ny\\\ny"},
+                           {5, 6, "z\\\nz"},      {7, 8, "u"},
+                           {9, 10, "v\\\\"},      {11, 12, "w\\\n"}};
+
+    make_and_write(f.name, data);
+    for (auto& [_, __, s] : data) {
+        s = no_escape(s);
+        if (s == "v") {
+            s = "v\\";
+        }
+    }
+
+    ss::parser<ss::escape<'\\'>> p{f.name, ","};
+    p.set_error_mode(ss::error_mode::error_string);
+    std::vector<X> i;
+
+    while (!p.eof()) {
+        auto a = p.get_next<int, double, std::string>();
+        auto [x, y, z] = a;
+        std::cout << "=====================" << std::endl;
+        std::cout << x << ' ' << y << ' ' << z << std::endl;
+        i.emplace_back(ss::to_object<X>(a));
+    }
+
+    CHECK(std::equal(i.begin(), i.end(), data.begin()));
+}

From d887dff82a09ac56ebf978670bc1c40f790973e3 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Mon, 1 Feb 2021 00:56:42 +0100
Subject: [PATCH 15/20] get rid of maybe-uninitialized warnings

---
 include/ss/converter.hpp |  24 ++----
 include/ss/parser.hpp    |   5 --
 include/ss/splitter.hpp  |   4 +-
 test/test_converter.cpp  | 164 +++++++++++++++++++--------------------
 test/test_parser.cpp     |   6 --
 test/test_splitter.cpp   |   2 -
 6 files changed, 88 insertions(+), 117 deletions(-)

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index 2e95ac9..c3614a4 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -127,12 +127,11 @@ public:
     no_void_validator_tup_t<Ts...> convert(
         line_ptr_type line, const std::string& delim = default_delimiter) {
         input_ = split(line, delim);
-        /* TODO
         if (!splitter_.valid()) {
-            // set error
-            return {};
+            set_error_line_not_split();
+            no_void_validator_tup_t<Ts...> ret{};
+            return ret;
         }
-        */
         return convert<Ts...>(input_);
     }
 
@@ -235,19 +234,10 @@ private:
         return error;
     }
 
-    void set_error_invalid_quotation() {
+    void set_error_line_not_split() {
         if (error_mode_ == error_mode::error_string) {
             string_error_.clear();
-            string_error_.append("invalid quotation");
-        } else {
-            bool_error_ = true;
-        }
-    }
-
-    void set_error_unterminated_quote() {
-        if (error_mode_ == error_mode::error_string) {
-            string_error_.clear();
-            string_error_.append("unterminated quote");
+            string_error_.append("line not split correctly");
         } else {
             bool_error_ = true;
         }
@@ -293,9 +283,9 @@ private:
     template <typename... Ts>
     no_void_validator_tup_t<Ts...> convert_impl(const split_input& elems) {
         clear_error();
-        no_void_validator_tup_t<Ts...> ret{};
         if (sizeof...(Ts) != elems.size()) {
             set_error_number_of_colums(sizeof...(Ts), elems.size());
+            no_void_validator_tup_t<Ts...> ret{};
             return ret;
         }
         return extract_tuple<Ts...>(elems);
@@ -368,7 +358,7 @@ private:
     no_void_validator_tup_t<Ts...> extract_tuple(const split_input& elems) {
         static_assert(!all_of<std::is_void, Ts...>::value,
                       "at least one parameter must be non void");
-        no_void_validator_tup_t<Ts...> ret;
+        no_void_validator_tup_t<Ts...> ret{};
         extract_multiple<0, 0, Ts...>(ret, elems);
         return ret;
     }
diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index 4f7dcd6..a94c71c 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -9,9 +9,6 @@
 #include <string>
 #include <vector>
 
-// TODO remove
-#include <iostream>
-
 namespace ss {
 
 template <typename... Matchers>
@@ -262,7 +259,6 @@ private:
         bool crlf;
 
         bool escaped_eol(size_t size) {
-            // escaped new line
             if constexpr (setup<Matchers...>::escape::enabled) {
                 const char* curr;
                 for (curr = next_line_buffer_ + size - 1;
@@ -277,7 +273,6 @@ private:
         }
 
         bool unterminated_quote() {
-            // unterimated quote
             if constexpr (ss::setup<Matchers...>::quote::enabled) {
                 if (next_line_converter_.unterminated_quote()) {
                     return true;
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index e73b825..ae77ff2 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -428,8 +428,8 @@ private:
 
     std::vector<string_range> output_;
     std::string string_error_;
-    bool bool_error_;
-    bool unterminated_quote_;
+    bool bool_error_{false};
+    bool unterminated_quote_{false};
     enum error_mode error_mode_ { error_mode::error_bool };
     line_ptr_type begin_;
     line_ptr_type curr_;
diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index fa2fab7..14c28ea 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -13,7 +13,7 @@ TEST_CASE("testing split") {
                 {"x\t-\ty", {"x", "y"}, "\t-\t"},
                 {"x", {"x"}, ","}} // clang-format on
     ) {
-        auto split = c.split(buff(s), delim);
+        auto split = c.split(s, delim);
         CHECK(split.size() == expected.size());
         for (size_t i = 0; i < split.size(); ++i) {
             auto s = std::string(split[i].first, split[i].second);
@@ -26,84 +26,83 @@ TEST_CASE("testing valid conversions") {
     ss::converter c;
 
     {
-        auto tup = c.convert<int>(buff("5"));
+        auto tup = c.convert<int>("5");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<int, void>(buff("5,junk"));
+        auto tup = c.convert<int, void>("5,junk");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<void, int>(buff("junk,5"));
+        auto tup = c.convert<void, int>("junk,5");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<int, void, void>(buff("5\njunk\njunk"), "\n");
+        auto tup = c.convert<int, void, void>("5\njunk\njunk", "\n");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<void, int, void>(buff("junk 5 junk"), " ");
+        auto tup = c.convert<void, int, void>("junk 5 junk", " ");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<void, void, int>(buff("junk\tjunk\t5"), "\t");
+        auto tup = c.convert<void, void, int>("junk\tjunk\t5", "\t");
         REQUIRE(c.valid());
         CHECK(tup == 5);
     }
     {
         auto tup =
-            c.convert<void, void, std::optional<int>>(buff("junk\tjunk\t5"),
-                                                      "\t");
+            c.convert<void, void, std::optional<int>>("junk\tjunk\t5", "\t");
         REQUIRE(c.valid());
         REQUIRE(tup.has_value());
         CHECK(tup == 5);
     }
     {
-        auto tup = c.convert<int, double, void>(buff("5,6.6,junk"));
+        auto tup = c.convert<int, double, void>("5,6.6,junk");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(5, 6.6));
     }
     {
-        auto tup = c.convert<int, void, double>(buff("5,junk,6.6"));
+        auto tup = c.convert<int, void, double>("5,junk,6.6");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(5, 6.6));
     }
     {
-        auto tup = c.convert<void, int, double>(buff("junk;5;6.6"), ";");
+        auto tup = c.convert<void, int, double>("junk;5;6.6", ";");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(5, 6.6));
     }
     {
         auto tup =
-            c.convert<void, std::optional<int>, double>(buff("junk;5;6.6"),
-                                                        ";");
+            c.convert<void, std::optional<int>, double>("junk;5;6.6", ";");
         REQUIRE(c.valid());
         REQUIRE(std::get<0>(tup).has_value());
         CHECK(tup == std::make_tuple(5, 6.6));
     }
     {
         auto tup =
-            c.convert<void, std::optional<int>, double>(buff("junk;5.4;6.6"),
-                                                        ";");
+            c.convert<void, std::optional<int>, double>("junk;5.4;6.6", ";");
         REQUIRE(c.valid());
         REQUIRE(!std::get<0>(tup).has_value());
         CHECK(tup == std::make_tuple(std::optional<int>{}, 6.6));
     }
     {
-        auto tup = c.convert<void, std::variant<int, double>,
-                             double>(buff("junk;5;6.6"), ";");
+        auto tup =
+            c.convert<void, std::variant<int, double>, double>("junk;5;6.6",
+                                                               ";");
         REQUIRE(c.valid());
         REQUIRE(std::holds_alternative<int>(std::get<0>(tup)));
         CHECK(tup == std::make_tuple(std::variant<int, double>{5}, 6.6));
     }
     {
-        auto tup = c.convert<void, std::variant<int, double>,
-                             double>(buff("junk;5.5;6.6"), ";");
+        auto tup =
+            c.convert<void, std::variant<int, double>, double>("junk;5.5;6.6",
+                                                               ";");
         REQUIRE(c.valid());
         REQUIRE(std::holds_alternative<double>(std::get<0>(tup)));
         CHECK(tup == std::make_tuple(std::variant<int, double>{5.5}, 6.6));
@@ -113,63 +112,60 @@ TEST_CASE("testing valid conversions") {
 TEST_CASE("testing invalid conversions") {
     ss::converter c;
 
-    c.convert<int>(buff(""));
+    c.convert<int>("");
     REQUIRE(!c.valid());
 
-    c.convert<int, void>(buff(""));
+    c.convert<int, void>("");
     REQUIRE(!c.valid());
 
-    c.convert<int, void>(buff(",junk"));
+    c.convert<int, void>(",junk");
     REQUIRE(!c.valid());
 
-    c.convert<void, int>(buff("junk,"));
+    c.convert<void, int>("junk,");
     REQUIRE(!c.valid());
 
-    c.convert<int>(buff("x"));
+    c.convert<int>("x");
     REQUIRE(!c.valid());
 
-    c.convert<int, void>(buff("x"));
+    c.convert<int, void>("x");
     REQUIRE(!c.valid());
 
-    c.convert<int, void>(buff("x,junk"));
+    c.convert<int, void>("x,junk");
     REQUIRE(!c.valid());
 
-    c.convert<void, int>(buff("junk,x"));
+    c.convert<void, int>("junk,x");
     REQUIRE(!c.valid());
 
-    c.convert<void, std::variant<int, double>, double>(buff("junk;.5.5;6"),
-                                                       ";");
+    c.convert<void, std::variant<int, double>, double>("junk;.5.5;6", ";");
     REQUIRE(!c.valid());
 }
 
 TEST_CASE("testing ss:ax restriction (all except)") {
     ss::converter c;
 
-    c.convert<ss::ax<int, 0>>(buff("0"));
+    c.convert<ss::ax<int, 0>>("0");
     REQUIRE(!c.valid());
 
-    c.convert<ss::ax<int, 0, 1, 2>>(buff("1"));
+    c.convert<ss::ax<int, 0, 1, 2>>("1");
     REQUIRE(!c.valid());
 
-    c.convert<void, char, ss::ax<int, 0, 1, 2>>(buff("junk,c,1"));
+    c.convert<void, char, ss::ax<int, 0, 1, 2>>("junk,c,1");
     REQUIRE(!c.valid());
 
-    c.convert<ss::ax<int, 1>, char>(buff("1,c"));
+    c.convert<ss::ax<int, 1>, char>("1,c");
     REQUIRE(!c.valid());
     {
-        int tup = c.convert<ss::ax<int, 1>>(buff("3"));
+        int tup = c.convert<ss::ax<int, 1>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
     {
-        std::tuple<char, int> tup =
-            c.convert<char, ss::ax<int, 1>>(buff("c,3"));
+        std::tuple<char, int> tup = c.convert<char, ss::ax<int, 1>>("c,3");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple('c', 3));
     }
     {
-        std::tuple<int, char> tup =
-            c.convert<ss::ax<int, 1>, char>(buff("3,c"));
+        std::tuple<int, char> tup = c.convert<ss::ax<int, 1>, char>("3,c");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(3, 'c'));
     }
@@ -178,33 +174,32 @@ TEST_CASE("testing ss:ax restriction (all except)") {
 TEST_CASE("testing ss:nx restriction (none except)") {
     ss::converter c;
 
-    c.convert<ss::nx<int, 1>>(buff("3"));
+    c.convert<ss::nx<int, 1>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<char, ss::nx<int, 1, 2, 69>>(buff("c,3"));
+    c.convert<char, ss::nx<int, 1, 2, 69>>("c,3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::nx<int, 1>, char>(buff("3,c"));
+    c.convert<ss::nx<int, 1>, char>("3,c");
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::nx<int, 3>>(buff("3"));
+        auto tup = c.convert<ss::nx<int, 3>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
     {
-        auto tup = c.convert<ss::nx<int, 0, 1, 2>>(buff("2"));
+        auto tup = c.convert<ss::nx<int, 0, 1, 2>>("2");
         REQUIRE(c.valid());
         CHECK(tup == 2);
     }
     {
-        auto tup =
-            c.convert<char, void, ss::nx<int, 0, 1, 2>>(buff("c,junk,1"));
+        auto tup = c.convert<char, void, ss::nx<int, 0, 1, 2>>("c,junk,1");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple('c', 1));
     }
     {
-        auto tup = c.convert<ss::nx<int, 1>, char>(buff("1,c"));
+        auto tup = c.convert<ss::nx<int, 1>, char>("1,c");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(1, 'c'));
     }
@@ -213,32 +208,32 @@ TEST_CASE("testing ss:nx restriction (none except)") {
 TEST_CASE("testing ss:ir restriction (in range)") {
     ss::converter c;
 
-    c.convert<ss::ir<int, 0, 2>>(buff("3"));
+    c.convert<ss::ir<int, 0, 2>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<char, ss::ir<int, 4, 69>>(buff("c,3"));
+    c.convert<char, ss::ir<int, 4, 69>>("c,3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::ir<int, 1, 2>, char>(buff("3,c"));
+    c.convert<ss::ir<int, 1, 2>, char>("3,c");
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::ir<int, 1, 5>>(buff("3"));
+        auto tup = c.convert<ss::ir<int, 1, 5>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
     {
-        auto tup = c.convert<ss::ir<int, 0, 2>>(buff("2"));
+        auto tup = c.convert<ss::ir<int, 0, 2>>("2");
         REQUIRE(c.valid());
         CHECK(tup == 2);
     }
     {
-        auto tup = c.convert<char, void, ss::ir<int, 0, 1>>(buff("c,junk,1"));
+        auto tup = c.convert<char, void, ss::ir<int, 0, 1>>("c,junk,1");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple('c', 1));
     }
     {
-        auto tup = c.convert<ss::ir<int, 1, 20>, char>(buff("1,c"));
+        auto tup = c.convert<ss::ir<int, 1, 20>, char>("1,c");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(1, 'c'));
     }
@@ -247,32 +242,32 @@ TEST_CASE("testing ss:ir restriction (in range)") {
 TEST_CASE("testing ss:oor restriction (out of range)") {
     ss::converter c;
 
-    c.convert<ss::oor<int, 1, 5>>(buff("3"));
+    c.convert<ss::oor<int, 1, 5>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::oor<int, 0, 2>>(buff("2"));
+    c.convert<ss::oor<int, 0, 2>>("2");
     REQUIRE(!c.valid());
 
-    c.convert<char, ss::oor<int, 0, 1>, void>(buff("c,1,junk"));
+    c.convert<char, ss::oor<int, 0, 1>, void>("c,1,junk");
     REQUIRE(!c.valid());
 
-    c.convert<ss::oor<int, 1, 20>, char>(buff("1,c"));
+    c.convert<ss::oor<int, 1, 20>, char>("1,c");
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::oor<int, 0, 2>>(buff("3"));
+        auto tup = c.convert<ss::oor<int, 0, 2>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<char, void, ss::oor<int, 4, 69>>(buff("c,junk,3"));
+        auto tup = c.convert<char, void, ss::oor<int, 4, 69>>("c,junk,3");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple('c', 3));
     }
 
     {
-        auto tup = c.convert<ss::oor<int, 1, 2>, char>(buff("3,c"));
+        auto tup = c.convert<ss::oor<int, 1, 2>, char>("3,c");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(3, 'c'));
     }
@@ -294,34 +289,33 @@ inline bool ss::extract(const char* begin, const char* end,
 TEST_CASE("testing ss:ne restriction (not empty)") {
     ss::converter c;
 
-    c.convert<ss::ne<std::string>>(buff(""));
+    c.convert<ss::ne<std::string>>("");
     REQUIRE(!c.valid());
 
-    c.convert<int, ss::ne<std::string>>(buff("3,"));
+    c.convert<int, ss::ne<std::string>>("3,");
     REQUIRE(!c.valid());
 
-    c.convert<ss::ne<std::string>, int>(buff(",3"));
+    c.convert<ss::ne<std::string>, int>(",3");
     REQUIRE(!c.valid());
 
-    c.convert<void, ss::ne<std::string>, int>(buff("junk,,3"));
+    c.convert<void, ss::ne<std::string>, int>("junk,,3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::ne<std::vector<int>>>(buff(""));
+    c.convert<ss::ne<std::vector<int>>>("");
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::ne<std::string>>(buff("s"));
+        auto tup = c.convert<ss::ne<std::string>>("s");
         REQUIRE(c.valid());
         CHECK(tup == "s");
     }
     {
-        auto tup =
-            c.convert<std::optional<int>, ss::ne<std::string>>(buff("1,s"));
+        auto tup = c.convert<std::optional<int>, ss::ne<std::string>>("1,s");
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple(1, "s"));
     }
     {
-        auto tup = c.convert<ss::ne<std::vector<int>>>(buff("{1 2 3}"));
+        auto tup = c.convert<ss::ne<std::vector<int>>>("{1 2 3}");
         REQUIRE(c.valid());
         CHECK(tup == extracted_vector);
     }
@@ -330,56 +324,56 @@ TEST_CASE("testing ss:ne restriction (not empty)") {
 TEST_CASE("testing ss:lt ss::lte ss::gt ss::gte restriction (in range)") {
     ss::converter c;
 
-    c.convert<ss::lt<int, 3>>(buff("3"));
+    c.convert<ss::lt<int, 3>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::lt<int, 2>>(buff("3"));
+    c.convert<ss::lt<int, 2>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::gt<int, 3>>(buff("3"));
+    c.convert<ss::gt<int, 3>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::gt<int, 4>>(buff("3"));
+    c.convert<ss::gt<int, 4>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::lte<int, 2>>(buff("3"));
+    c.convert<ss::lte<int, 2>>("3");
     REQUIRE(!c.valid());
 
-    c.convert<ss::gte<int, 4>>(buff("3"));
+    c.convert<ss::gte<int, 4>>("3");
     REQUIRE(!c.valid());
 
     {
-        auto tup = c.convert<ss::lt<int, 4>>(buff("3"));
+        auto tup = c.convert<ss::lt<int, 4>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::gt<int, 2>>(buff("3"));
+        auto tup = c.convert<ss::gt<int, 2>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::lte<int, 4>>(buff("3"));
+        auto tup = c.convert<ss::lte<int, 4>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::lte<int, 3>>(buff("3"));
+        auto tup = c.convert<ss::lte<int, 3>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::gte<int, 2>>(buff("3"));
+        auto tup = c.convert<ss::gte<int, 2>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
 
     {
-        auto tup = c.convert<ss::gte<int, 3>>(buff("3"));
+        auto tup = c.convert<ss::gte<int, 3>>("3");
         REQUIRE(c.valid());
         CHECK(tup == 3);
     }
@@ -388,12 +382,12 @@ TEST_CASE("testing ss:lt ss::lte ss::gt ss::gte restriction (in range)") {
 TEST_CASE("testing error mode") {
     ss::converter c;
 
-    c.convert<int>(buff("junk"));
+    c.convert<int>("junk");
     CHECK(!c.valid());
     CHECK(c.error_msg().empty());
 
     c.set_error_mode(ss::error_mode::error_string);
-    c.convert<int>(buff("junk"));
+    c.convert<int>("junk");
     CHECK(!c.valid());
     CHECK(!c.error_msg().empty());
 }
@@ -421,7 +415,7 @@ TEST_CASE("testing converter with quotes spacing and escaping") {
         ss::converter<ss::trim<' '>> c;
 
         auto tup = c.convert<std::string, std::string, double, char>(
-            R"(    just  ,  some   ,  12.3 ,a     )");
+            buff(R"(    just  ,  some   ,  12.3 ,a     )"));
         REQUIRE(c.valid());
         CHECK(tup == std::make_tuple("just", "some", 12.3, 'a'));
     }
diff --git a/test/test_parser.cpp b/test/test_parser.cpp
index 905f1a2..896f0b9 100644
--- a/test/test_parser.cpp
+++ b/test/test_parser.cpp
@@ -541,9 +541,6 @@ TEST_CASE("testing csv on multiple lines with quotes") {
 
     while (!p.eof()) {
         auto a = p.get_next<int, double, std::string>();
-        auto [x, y, z] = a;
-        std::cout << "=====================" << std::endl;
-        std::cout << x << ' ' << y << ' ' << z << std::endl;
         i.emplace_back(ss::to_object<X>(a));
     }
 
@@ -575,9 +572,6 @@ TEST_CASE("testing csv on multiple lines with escapes") {
 
     while (!p.eof()) {
         auto a = p.get_next<int, double, std::string>();
-        auto [x, y, z] = a;
-        std::cout << "=====================" << std::endl;
-        std::cout << x << ' ' << y << ' ' << z << std::endl;
         i.emplace_back(ss::to_object<X>(a));
     }
 
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index c2376ef..de1ff6f 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -4,8 +4,6 @@
 #include <iostream>
 #include <ss/splitter.hpp>
 
-// TODO make ss::quote accept only one argument
-
 namespace {
 constexpr static auto combinations_size_default = 4;
 size_t combinations_size = combinations_size_default;

From 6da0cb35447c6bd1e5831033b4c85e8df648123e Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Tue, 2 Feb 2021 02:17:31 +0100
Subject: [PATCH 16/20] add mismatched quote error, update error handling for
 splitter, add unit tests, update test_helpers buffer

---
 include/ss/converter.hpp | 18 +++++++++++-------
 include/ss/parser.hpp    |  2 ++
 include/ss/splitter.hpp  | 26 ++++++++++++++++++++------
 test/test_converter.cpp  | 24 ++++++++++++++++++++++++
 test/test_helpers.hpp    | 27 ++++++++++++++++++++++-----
 test/test_splitter.cpp   | 25 +++++++++++++++++++++++++
 6 files changed, 104 insertions(+), 18 deletions(-)

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index c3614a4..fff5fbd 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -127,11 +127,6 @@ public:
     no_void_validator_tup_t<Ts...> convert(
         line_ptr_type line, const std::string& delim = default_delimiter) {
         input_ = split(line, delim);
-        if (!splitter_.valid()) {
-            set_error_line_not_split();
-            no_void_validator_tup_t<Ts...> ret{};
-            return ret;
-        }
         return convert<Ts...>(input_);
     }
 
@@ -191,6 +186,7 @@ public:
     }
 
     void set_error_mode(error_mode mode) {
+        splitter_.set_error_mode(mode);
         error_mode_ = mode;
     }
 
@@ -234,10 +230,10 @@ private:
         return error;
     }
 
-    void set_error_line_not_split() {
+    void set_error_unterminated_quote() {
         if (error_mode_ == error_mode::error_string) {
             string_error_.clear();
-            string_error_.append("line not split correctly");
+            string_error_.append(splitter_.error_msg());
         } else {
             bool_error_ = true;
         }
@@ -283,11 +279,19 @@ private:
     template <typename... Ts>
     no_void_validator_tup_t<Ts...> convert_impl(const split_input& elems) {
         clear_error();
+
+        if (!splitter_.valid()) {
+            set_error_unterminated_quote();
+            no_void_validator_tup_t<Ts...> ret{};
+            return ret;
+        }
+
         if (sizeof...(Ts) != elems.size()) {
             set_error_number_of_colums(sizeof...(Ts), elems.size());
             no_void_validator_tup_t<Ts...> ret{};
             return ret;
         }
+
         return extract_tuple<Ts...>(elems);
     }
 
diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index a94c71c..4806b06 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -9,6 +9,8 @@
 #include <string>
 #include <vector>
 
+// TODO rule of 5-3-1
+// TODO threads
 namespace ss {
 
 template <typename... Matchers>
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index ae77ff2..8180590 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -119,7 +119,7 @@ public:
     }
 
     const split_input& split(line_ptr_type new_line,
-                       const std::string& delimiter = default_delimiter) {
+                             const std::string& delimiter = default_delimiter) {
         output_.clear();
         return resplit(new_line, -1, delimiter);
     }
@@ -131,8 +131,9 @@ public:
         }
     }
 
-    const split_input& resplit(line_ptr_type new_line, ssize_t new_size,
-                         const std::string& delimiter = default_delimiter) {
+    const split_input& resplit(
+        line_ptr_type new_line, ssize_t new_size,
+        const std::string& delimiter = default_delimiter) {
         line_ = new_line;
 
         // resplitting, continue from last slice
@@ -175,6 +176,16 @@ private:
         }
     }
 
+    void set_error_mismatched_quote(size_t n) {
+        if (error_mode_ == error_mode::error_string) {
+            string_error_.clear();
+            string_error_.append("mismatched quote at position: " +
+                                 std::to_string(n));
+        } else {
+            bool_error_ = true;
+        }
+    }
+
     void set_error_unterminated_quote() {
         unterminated_quote_ = true;
         if (error_mode_ == error_mode::error_string) {
@@ -186,9 +197,11 @@ private:
     }
 
     void set_error_invalid_resplit() {
+        unterminated_quote_ = false;
         if (error_mode_ == error_mode::error_string) {
             string_error_.clear();
-            string_error_.append("invalid_resplit");
+            string_error_.append("invalid resplit, new line must be longer"
+                                 "than the end of the last slice");
         } else {
             bool_error_ = true;
         }
@@ -388,9 +401,10 @@ private:
                             // eg no trim: ...,"hello"\0 -> hello
                             output_.emplace_back(begin_, curr_);
                         } else {
-                            // missmatched quote
+                            // mismatched quote
                             // eg: ...,"hel"lo,... -> error
-                            // or not
+                            set_error_mismatched_quote(end_ - line_);
+                            output_.emplace_back(line_, begin_);
                         }
                         state_ = state::finished;
                         break;
diff --git a/test/test_converter.cpp b/test/test_converter.cpp
index 14c28ea..e8eec52 100644
--- a/test/test_converter.cpp
+++ b/test/test_converter.cpp
@@ -115,6 +115,9 @@ TEST_CASE("testing invalid conversions") {
     c.convert<int>("");
     REQUIRE(!c.valid());
 
+    c.convert<int>("10", "");
+    REQUIRE(!c.valid());
+
     c.convert<int, void>("");
     REQUIRE(!c.valid());
 
@@ -438,3 +441,24 @@ TEST_CASE("testing converter with quotes spacing and escaping") {
         CHECK(tup == std::make_tuple("ju,st", "so,me", 12.34, "str\"ings"));
     }
 }
+
+TEST_CASE("testing invalid split conversions") {
+    ss::converter<ss::escape<'\\'>, ss::trim<' '>, ss::quote<'"'>> c;
+    c.set_error_mode(ss::error_mode::error_string);
+
+    {
+        // mismatched quote
+        auto tup = c.convert<std::string, std::string, double, char>(
+            buff(R"(  "just  , some ,   "12.3","a"  )"));
+        CHECK(!c.valid());
+        CHECK(!c.unterminated_quote());
+    }
+
+    {
+        // unterminated quote
+        auto tup = c.convert<std::string, std::string, double, std::string>(
+            buff(R"(  ju\,st  ,  "so,me"  ,   12.34     ,   "str""ings)"));
+        CHECK(!c.valid());
+        CHECK(c.unterminated_quote());
+    }
+}
diff --git a/test/test_helpers.hpp b/test/test_helpers.hpp
index 903cde8..f9317cc 100644
--- a/test/test_helpers.hpp
+++ b/test/test_helpers.hpp
@@ -1,4 +1,5 @@
 #pragma once
+#include <cstdlib>
 #include <cstring>
 
 #ifdef CMAKE_GITHUB_CI
@@ -8,19 +9,35 @@
 #endif
 
 class buffer {
-    constexpr static auto buff_size = 1024;
-    char data_[buff_size];
+    char* data_{nullptr};
 
 public:
     char* operator()(const char* data) {
-        memset(data_, '\0', buff_size);
+        if (data_) {
+            delete[] data_;
+        }
+        data_ = new char[strlen(data) + 1];
         strcpy(data_, data);
         return data_;
     }
 
     char* append(const char* data) {
-        strcat(data_, data);
-        return data_;
+        if (data_) {
+            char* new_data_ = new char[strlen(data_) + strlen(data) + 1];
+            strcpy(new_data_, data_);
+            strcat(new_data_, data);
+            delete[] data_;
+            data_ = new_data_;
+            return data_;
+        } else {
+            return operator()(data);
+        }
+    }
+
+    ~buffer() {
+        if (data_) {
+            delete[] data_;
+        }
     }
 };
 
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index de1ff6f..82b2b10 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -668,3 +668,28 @@ TEST_CASE("testing unterminated quote") {
         }
     }
 }
+
+TEST_CASE("testing invalid splits") {
+    ss::splitter<ss::quote<'"'>, ss::trim<' '>, ss::escape<'\\'>> s;
+
+    // empty delimiter
+    s.split(buff("some,random,strings"), "");
+    CHECK(!s.valid());
+    CHECK(!s.unterminated_quote());
+
+    // mismatched delimiter
+    s.split(buff(R"(some,"random,"strings")"));
+    CHECK(!s.valid());
+    CHECK(!s.unterminated_quote());
+
+    // unterminated quote
+    s.split(buff("some,random,\"strings"));
+    CHECK(!s.valid());
+    CHECK(s.unterminated_quote());
+
+    // invalid resplit
+    char new_line[] = "some";
+    auto a = s.resplit(new_line, strlen(new_line));
+    CHECK(!s.valid());
+    CHECK(!s.unterminated_quote());
+}

From 7640c038f32789e74a17ad8e45e0ce60fa2bec42 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Tue, 2 Feb 2021 21:43:36 +0100
Subject: [PATCH 17/20] move setup to seperate header, add static asserts

---
 include/ss/setup.hpp    | 111 ++++++++++++++++++++++++++++++++++++++++
 include/ss/splitter.hpp |  73 +-------------------------
 2 files changed, 112 insertions(+), 72 deletions(-)
 create mode 100644 include/ss/setup.hpp

diff --git a/include/ss/setup.hpp b/include/ss/setup.hpp
new file mode 100644
index 0000000..4474d96
--- /dev/null
+++ b/include/ss/setup.hpp
@@ -0,0 +1,111 @@
+#pragma once
+#include "type_traits.hpp"
+#include <array>
+
+namespace ss {
+
+template <char... Cs>
+struct matcher {
+private:
+    template <char X, char... Xs>
+    static bool match_impl(char c) {
+        if constexpr (sizeof...(Xs) != 0) {
+            return (c == X) || match_impl<Xs...>(c);
+        }
+        return (c == X);
+    }
+
+    constexpr static bool contains_string_terminator() {
+        for (const auto& match : matches) {
+            if (match == '\0') {
+                return false;
+            }
+        }
+        return true;
+    }
+
+public:
+    static bool match(char c) {
+        return match_impl<Cs...>(c);
+    }
+
+    constexpr static bool enabled = true;
+    constexpr static std::array<char, sizeof...(Cs)> matches{Cs...};
+    static_assert(contains_string_terminator(),
+                  "string terminator cannot be used as a match character");
+};
+
+template <typename FirstMatcher, typename SecondMatcher>
+constexpr bool matches_intersect() {
+    for (const auto& first_match : FirstMatcher::matches) {
+        for (const auto& second_match : SecondMatcher::matches) {
+            if (first_match != '\0' && first_match == second_match) {
+                return true;
+            }
+        }
+    }
+    return false;
+}
+
+template <>
+class matcher<'\0'> {
+public:
+    constexpr static bool enabled = false;
+    constexpr static std::array<char, 1> matches{'\0'};
+    static bool match(char c) = delete;
+};
+
+template <char C>
+struct quote : matcher<C> {};
+
+template <char... Cs>
+struct trim : matcher<Cs...> {};
+
+template <char... Cs>
+struct escape : matcher<Cs...> {};
+
+template <typename T, template <char...> class Template>
+struct is_instance_of_matcher {
+    constexpr static bool value = false;
+};
+
+template <char... Ts, template <char...> class Template>
+struct is_instance_of_matcher<Template<Ts...>, Template> {
+    constexpr static bool value = true;
+};
+
+template <template <char...> class Matcher, typename... Ts>
+struct get_matcher;
+
+template <template <char...> class Matcher, typename T, typename... Ts>
+struct get_matcher<Matcher, T, Ts...> {
+    using type =
+        typename ternary<is_instance_of_matcher<T, Matcher>::value, T,
+                         typename get_matcher<Matcher, Ts...>::type>::type;
+};
+
+template <template <char...> class Matcher>
+struct get_matcher<Matcher> {
+    using type = Matcher<'\0'>;
+};
+
+template <template <char...> class Matcher, typename... Ts>
+using get_matcher_t = typename get_matcher<Matcher, Ts...>::type;
+
+template <typename... Ts>
+struct setup {
+    using quote = get_matcher_t<quote, Ts...>;
+    using trim = get_matcher_t<trim, Ts...>;
+    using escape = get_matcher_t<escape, Ts...>;
+
+#define ASSERT_MSG "cannot have the same character in multiple matchers"
+    static_assert(!matches_intersect<quote, trim>(), ASSERT_MSG);
+    static_assert(!matches_intersect<trim, escape>(), ASSERT_MSG);
+    static_assert(!matches_intersect<escape, quote>(), ASSERT_MSG);
+#undef ASSERT_MSG
+};
+
+template <typename... Ts>
+struct setup<setup<Ts...>> : setup<Ts...> {};
+
+} /* ss */
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index 8180590..aa35109 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -1,4 +1,5 @@
 #pragma once
+#include "setup.hpp"
 #include "type_traits.hpp"
 #include <cstdlib>
 #include <cstring>
@@ -6,78 +7,6 @@
 #include <vector>
 
 namespace ss {
-template <char... Cs>
-struct matcher {
-private:
-    template <char X, char... Xs>
-    static bool match_impl(char c) {
-        if constexpr (sizeof...(Xs) != 0) {
-            return (c == X) || match_impl<Xs...>(c);
-        }
-        return (c == X);
-    }
-
-public:
-    static bool match(char c) {
-        return match_impl<Cs...>(c);
-    }
-    constexpr static bool enabled = true;
-};
-
-template <>
-class matcher<'\0'> {
-public:
-    constexpr static bool enabled = false;
-    static bool match(char c) = delete;
-};
-
-template <char C>
-struct quote : matcher<C> {};
-
-template <char... Cs>
-struct trim : matcher<Cs...> {};
-
-template <char... Cs>
-struct escape : matcher<Cs...> {};
-
-template <typename T, template <char...> class Template>
-struct is_instance_of_matcher {
-    constexpr static bool value = false;
-};
-
-template <char... Ts, template <char...> class Template>
-struct is_instance_of_matcher<Template<Ts...>, Template> {
-    constexpr static bool value = true;
-};
-
-template <template <char...> class Matcher, typename... Ts>
-struct get_matcher;
-
-template <template <char...> class Matcher, typename T, typename... Ts>
-struct get_matcher<Matcher, T, Ts...> {
-    using type =
-        typename ternary<is_instance_of_matcher<T, Matcher>::value, T,
-                         typename get_matcher<Matcher, Ts...>::type>::type;
-};
-
-template <template <char...> class Matcher>
-struct get_matcher<Matcher> {
-    using type = Matcher<'\0'>;
-};
-
-template <template <char...> class Matcher, typename... Ts>
-using get_matcher_t = typename get_matcher<Matcher, Ts...>::type;
-
-// TODO add static asserts
-template <typename... Ts>
-struct setup {
-    using quote = get_matcher_t<quote, Ts...>;
-    using trim = get_matcher_t<trim, Ts...>;
-    using escape = get_matcher_t<escape, Ts...>;
-};
-
-template <typename... Ts>
-struct setup<setup<Ts...>> : setup<Ts...> {};
 
 using string_range = std::pair<const char*, const char*>;
 using split_input = std::vector<string_range>;

From f973f404be7eced4c526bf50ca6681b5d932aa49 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Fri, 5 Feb 2021 18:28:10 +0100
Subject: [PATCH 18/20] refactor code, increase performance

---
 include/ss/converter.hpp |  17 ++--
 include/ss/setup.hpp     |   2 +-
 include/ss/splitter.hpp  | 165 +++++++++++++++++++--------------------
 3 files changed, 89 insertions(+), 95 deletions(-)

diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index fff5fbd..e5b3de3 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -126,8 +126,8 @@ public:
     template <typename... Ts>
     no_void_validator_tup_t<Ts...> convert(
         line_ptr_type line, const std::string& delim = default_delimiter) {
-        input_ = split(line, delim);
-        return convert<Ts...>(input_);
+        split(line, delim);
+        return convert<Ts...>(splitter_.input_);
     }
 
     // parses already split line, returns 'T' object with extracted values
@@ -169,7 +169,7 @@ public:
     // same as above, but uses cached split line
     template <typename T, typename... Ts>
     no_void_validator_tup_t<T, Ts...> convert() {
-        return convert<T, Ts...>(input_);
+        return convert<T, Ts...>(splitter_.input_);
     }
 
     bool valid() const {
@@ -194,19 +194,17 @@ public:
     // contain the beginnings and the ends of each column of the string
     const split_input& split(line_ptr_type line,
                              const std::string& delim = default_delimiter) {
-        input_.clear();
+        splitter_.input_.clear();
         if (line[0] == '\0') {
-            return input_;
+            return splitter_.input_;
         }
 
-        input_ = splitter_.split(line, delim);
-        return input_;
+        return splitter_.split(line, delim);
     }
 
     const split_input& resplit(line_ptr_type new_line, ssize_t new_size,
                                const std::string& delim = default_delimiter) {
-        input_ = splitter_.resplit(new_line, new_size, delim);
-        return input_;
+        return splitter_.resplit(new_line, new_size, delim);
     }
 
 private:
@@ -371,7 +369,6 @@ private:
     // members
     ////////////////
 
-    std::vector<string_range> input_;
     std::string string_error_;
     bool bool_error_;
     enum error_mode error_mode_ { error_mode::error_bool };
diff --git a/include/ss/setup.hpp b/include/ss/setup.hpp
index 4474d96..9d1c02b 100644
--- a/include/ss/setup.hpp
+++ b/include/ss/setup.hpp
@@ -98,7 +98,7 @@ struct setup {
     using trim = get_matcher_t<trim, Ts...>;
     using escape = get_matcher_t<escape, Ts...>;
 
-#define ASSERT_MSG "cannot have the same character in multiple matchers"
+#define ASSERT_MSG "cannot have the same match character in multiple matchers"
     static_assert(!matches_intersect<quote, trim>(), ASSERT_MSG);
     static_assert(!matches_intersect<trim, escape>(), ASSERT_MSG);
     static_assert(!matches_intersect<escape, quote>(), ASSERT_MSG);
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index aa35109..ac24984 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -3,6 +3,7 @@
 #include "type_traits.hpp"
 #include <cstdlib>
 #include <cstring>
+#include <memory>
 #include <string>
 #include <vector>
 
@@ -17,7 +18,6 @@ enum class error_mode { error_string, error_bool };
 template <typename... Ts>
 class splitter {
 private:
-    enum class state { begin, reading, quoting, finished };
     constexpr static auto default_delimiter = ",";
 
     using quote = typename setup<Ts...>::quote;
@@ -49,12 +49,12 @@ public:
 
     const split_input& split(line_ptr_type new_line,
                              const std::string& delimiter = default_delimiter) {
-        output_.clear();
+        input_.clear();
         return resplit(new_line, -1, delimiter);
     }
 
     void adjust_ranges(const char* old_line) {
-        for (auto& [begin, end] : output_) {
+        for (auto& [begin, end] : input_) {
             begin = begin - old_line + line_;
             end = end - old_line + line_;
         }
@@ -66,17 +66,17 @@ public:
         line_ = new_line;
 
         // resplitting, continue from last slice
-        if (!output_.empty() && unterminated_quote()) {
-            const auto& last = std::prev(output_.end());
+        if (!input_.empty() && unterminated_quote()) {
+            const auto& last = std::prev(input_.end());
             const auto [old_line, old_begin] = *last;
             size_t begin = old_begin - old_line - 1;
-            output_.pop_back();
+            input_.pop_back();
             adjust_ranges(old_line);
 
             // safety measure
             if (new_size != -1 && static_cast<size_t>(new_size) < begin) {
                 set_error_invalid_resplit();
-                return output_;
+                return input_;
             }
 
             begin_ = line_ + begin;
@@ -205,32 +205,31 @@ private:
     void shift() {
         if constexpr (!is_const_line) {
             *curr_ = *end_;
+            ++curr_;
         }
         ++end_;
-        ++curr_;
     }
 
     void shift(size_t n) {
         if constexpr (!is_const_line) {
             memcpy(curr_, end_, n);
+            curr_ += n;
         }
         end_ += n;
-        curr_ += n;
     }
 
     void push_and_start_next(size_t n) {
-        output_.emplace_back(begin_, curr_);
+        push_range();
         begin_ = end_ + n;
-        state_ = state::begin;
     }
 
-    split_input& split_impl_select_delim(
+    const split_input& split_impl_select_delim(
         const std::string& delimiter = default_delimiter) {
         clear_error();
         switch (delimiter.size()) {
         case 0:
             set_error_empty_delimiter();
-            return output_;
+            return input_;
         case 1:
             return split_impl(delimiter[0]);
         default:
@@ -239,48 +238,43 @@ private:
     }
 
     template <typename Delim>
-    split_input& split_impl(const Delim& delim) {
-        state_ = state::begin;
+    const split_input& split_impl(const Delim& delim) {
 
-        if (output_.empty()) {
+        if (input_.empty()) {
             begin_ = line_;
         }
 
         trim_if_enabled(begin_);
 
-        while (state_ != state::finished) {
-            curr_ = end_ = begin_;
-            switch (state_) {
-            case (state::begin):
-                state_begin();
-                break;
-            case (state::reading):
-                state_reading(delim);
-                break;
-            case (state::quoting):
-                state_quoting(delim);
-                break;
-            default:
-                break;
-            };
-        }
+        for (done_ = false; !done_; state_begin(delim))
+            ;
 
-        return output_;
+        return input_;
     }
 
     ////////////////
     // states
     ////////////////
 
-    void state_begin() {
+    void push_range() {
+        if constexpr (is_const_line) {
+            input_.emplace_back(begin_, end_);
+        } else {
+            input_.emplace_back(begin_, curr_);
+        }
+    }
+
+    template <typename Delim>
+    void state_begin(const Delim& delim) {
         if constexpr (quote::enabled) {
             if (quote::match(*begin_)) {
-                ++begin_;
-                state_ = state::quoting;
+                curr_ = end_ = ++begin_;
+                state_quoting(delim);
                 return;
             }
         }
-        state_ = state::reading;
+        curr_ = end_ = begin_;
+        state_reading(delim);
     }
 
     template <typename Delim>
@@ -288,22 +282,22 @@ private:
         while (true) {
             auto [width, valid] = match_delimiter(end_, delim);
 
-            // not a delimiter
             if (!valid) {
+                // not a delimiter
                 if (width == 0) {
                     // eol
-                    output_.emplace_back(begin_, curr_);
-                    state_ = state::finished;
+                    push_range();
+                    done_ = true;
                     break;
                 } else {
                     shift(width);
                     continue;
                 }
+            } else {
+                // found delimiter
+                push_and_start_next(width);
+                break;
             }
-
-            // found delimiter
-            push_and_start_next(width);
-            break;
         }
     }
 
@@ -311,56 +305,57 @@ private:
     void state_quoting(const Delim& delim) {
         if constexpr (quote::enabled) {
             while (true) {
-                if (quote::match(*end_)) {
-                    // double quote
-                    // eg: ...,"hel""lo,... -> hel"lo
-                    if (quote::match(end_[1])) {
-                        ++end_;
-                        shift();
-                        continue;
+                if (!quote::match(*end_)) {
+                    if constexpr (escape::enabled) {
+                        if (escape::match(*end_)) {
+                            ++end_;
+                            shift();
+                            continue;
+                        }
                     }
 
-                    auto [width, valid] = match_delimiter(end_ + 1, delim);
-
-                    // not a delimiter
-                    if (!valid) {
-                        if (width == 0) {
-                            // eol
-                            // eg: ...,"hello"   \0 -> hello
-                            // eg no trim: ...,"hello"\0 -> hello
-                            output_.emplace_back(begin_, curr_);
-                        } else {
-                            // mismatched quote
-                            // eg: ...,"hel"lo,... -> error
-                            set_error_mismatched_quote(end_ - line_);
-                            output_.emplace_back(line_, begin_);
-                        }
-                        state_ = state::finished;
+                    // unterminated quote error
+                    // eg: ..."hell\0 -> quote not terminated
+                    if (*end_ == '\0') {
+                        set_error_unterminated_quote();
+                        input_.emplace_back(line_, begin_);
+                        done_ = true;
                         break;
                     }
+                    shift();
+                    continue;
+                }
 
-                    // delimiter
+                auto [width, valid] = match_delimiter(end_ + 1, delim);
+
+                // delimiter
+                if (valid) {
                     push_and_start_next(width + 1);
                     break;
                 }
 
-                if constexpr (escape::enabled) {
-                    if (escape::match(*end_)) {
-                        ++end_;
-                        shift();
-                        continue;
-                    }
+                // double quote
+                // eg: ...,"hel""lo",... -> hel"lo
+                if (quote::match(end_[1])) {
+                    ++end_;
+                    shift();
+                    continue;
                 }
 
-                // unterminated error
-                // eg: ..."hell\0 -> quote not terminated
-                if (*end_ == '\0') {
-                    set_error_unterminated_quote();
-                    output_.emplace_back(line_, begin_);
-                    state_ = state::finished;
-                    break;
+                // not a delimiter
+                if (width == 0) {
+                    // eol
+                    // eg: ...,"hello"   \0 -> hello
+                    // eg no trim: ...,"hello"\0 -> hello
+                    push_range();
+                } else {
+                    // mismatched quote
+                    // eg: ...,"hel"lo,... -> error
+                    set_error_mismatched_quote(end_ - line_);
+                    input_.emplace_back(line_, begin_);
                 }
-                shift();
+                done_ = true;
+                break;
             }
         }
     }
@@ -369,7 +364,6 @@ private:
     // members
     ////////////////
 
-    std::vector<string_range> output_;
     std::string string_error_;
     bool bool_error_{false};
     bool unterminated_quote_{false};
@@ -378,7 +372,10 @@ private:
     line_ptr_type curr_;
     line_ptr_type end_;
     line_ptr_type line_;
-    state state_;
+    bool done_;
+
+public:
+    split_input input_;
 };
 
 } /* ss */

From 42629c39c4749215120ef68fa47a3d6902f02af3 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sat, 6 Feb 2021 00:55:05 +0100
Subject: [PATCH 19/20] refactore a bit more, increase escape shifting
 performance

---
 include/ss/parser.hpp   |  6 +--
 include/ss/splitter.hpp | 82 +++++++++++++++++++++--------------------
 2 files changed, 45 insertions(+), 43 deletions(-)

diff --git a/include/ss/parser.hpp b/include/ss/parser.hpp
index 4806b06..d8b19b5 100644
--- a/include/ss/parser.hpp
+++ b/include/ss/parser.hpp
@@ -285,10 +285,10 @@ private:
 
         void undo_remove_eol(size_t& string_end) {
             if (crlf) {
-                memcpy(next_line_buffer_ + string_end, "\r\n\0", 3);
+                std::copy_n("\r\n\0", 3, next_line_buffer_ + string_end);
                 string_end += 2;
             } else {
-                memcpy(next_line_buffer_ + string_end, "\n\0", 2);
+                std::copy_n("\n\0", 2, next_line_buffer_ + string_end);
                 string_end += 1;
             }
         }
@@ -311,7 +311,7 @@ private:
             first = static_cast<char*>(realloc(static_cast<void*>(first),
                                                first_size + second_size + 2));
 
-            memcpy(first + first_size, second, second_size + 1);
+            std::copy_n(second, second_size + 1, first + first_size);
             first_size += second_size;
         }
 
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index ac24984..5c32367 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -1,6 +1,7 @@
 #pragma once
 #include "setup.hpp"
 #include "type_traits.hpp"
+#include <algorithm>
 #include <cstdlib>
 #include <cstring>
 #include <memory>
@@ -167,8 +168,7 @@ private:
     void shift_if_escaped(line_ptr_type& curr) {
         if constexpr (escape::enabled) {
             if (escape::match(*curr)) {
-                *curr_ = end_[1];
-                ++end_;
+                shift_and_jump_escape();
             }
         }
     }
@@ -199,30 +199,38 @@ private:
     }
 
     ////////////////
-    // matching
+    // shifting
     ////////////////
 
-    void shift() {
-        if constexpr (!is_const_line) {
-            *curr_ = *end_;
-            ++curr_;
+    void shift_and_set_current() {
+        if (escaped_ > 0) {
+            if constexpr (!is_const_line) {
+                std::copy_n(curr_ + escaped_, end_ - curr_, curr_);
+            }
         }
+        curr_ = end_ - escaped_;
+    }
+
+    void shift_and_push() {
+        shift_and_set_current();
+        input_.emplace_back(begin_, curr_);
+    }
+
+    void shift_and_jump_escape() {
+        shift_and_set_current();
         ++end_;
+        ++escaped_;
     }
 
-    void shift(size_t n) {
-        if constexpr (!is_const_line) {
-            memcpy(curr_, end_, n);
-            curr_ += n;
-        }
-        end_ += n;
-    }
-
-    void push_and_start_next(size_t n) {
-        push_range();
+    void shift_push_and_start_next(size_t n) {
+        shift_and_push();
         begin_ = end_ + n;
     }
 
+    ////////////////
+    // split impl
+    ////////////////
+
     const split_input& split_impl_select_delim(
         const std::string& delimiter = default_delimiter) {
         clear_error();
@@ -246,39 +254,32 @@ private:
 
         trim_if_enabled(begin_);
 
-        for (done_ = false; !done_; state_begin(delim))
+        for (done_ = false; !done_; read(delim))
             ;
 
         return input_;
     }
 
     ////////////////
-    // states
+    // reading
     ////////////////
 
-    void push_range() {
-        if constexpr (is_const_line) {
-            input_.emplace_back(begin_, end_);
-        } else {
-            input_.emplace_back(begin_, curr_);
-        }
-    }
-
     template <typename Delim>
-    void state_begin(const Delim& delim) {
+    void read(const Delim& delim) {
+        escaped_ = 0;
         if constexpr (quote::enabled) {
             if (quote::match(*begin_)) {
                 curr_ = end_ = ++begin_;
-                state_quoting(delim);
+                read_quoted(delim);
                 return;
             }
         }
         curr_ = end_ = begin_;
-        state_reading(delim);
+        read_normal(delim);
     }
 
     template <typename Delim>
-    void state_reading(const Delim& delim) {
+    void read_normal(const Delim& delim) {
         while (true) {
             auto [width, valid] = match_delimiter(end_, delim);
 
@@ -286,30 +287,30 @@ private:
                 // not a delimiter
                 if (width == 0) {
                     // eol
-                    push_range();
+                    shift_and_push();
                     done_ = true;
                     break;
                 } else {
-                    shift(width);
+                    end_ += width;
                     continue;
                 }
             } else {
                 // found delimiter
-                push_and_start_next(width);
+                shift_push_and_start_next(width);
                 break;
             }
         }
     }
 
     template <typename Delim>
-    void state_quoting(const Delim& delim) {
+    void read_quoted(const Delim& delim) {
         if constexpr (quote::enabled) {
             while (true) {
                 if (!quote::match(*end_)) {
                     if constexpr (escape::enabled) {
                         if (escape::match(*end_)) {
+                            shift_and_jump_escape();
                             ++end_;
-                            shift();
                             continue;
                         }
                     }
@@ -322,7 +323,7 @@ private:
                         done_ = true;
                         break;
                     }
-                    shift();
+                    ++end_;
                     continue;
                 }
 
@@ -330,15 +331,15 @@ private:
 
                 // delimiter
                 if (valid) {
-                    push_and_start_next(width + 1);
+                    shift_push_and_start_next(width + 1);
                     break;
                 }
 
                 // double quote
                 // eg: ...,"hel""lo",... -> hel"lo
                 if (quote::match(end_[1])) {
+                    shift_and_jump_escape();
                     ++end_;
-                    shift();
                     continue;
                 }
 
@@ -347,7 +348,7 @@ private:
                     // eol
                     // eg: ...,"hello"   \0 -> hello
                     // eg no trim: ...,"hello"\0 -> hello
-                    push_range();
+                    shift_and_push();
                 } else {
                     // mismatched quote
                     // eg: ...,"hel"lo,... -> error
@@ -373,6 +374,7 @@ private:
     line_ptr_type end_;
     line_ptr_type line_;
     bool done_;
+    size_t escaped_{0};
 
 public:
     split_input input_;

From 9b90803f6f5a811c9e14edd572d0b6a0746a3e46 Mon Sep 17 00:00:00 2001
From: ado <adnan.abd0124@gmail.com>
Date: Sat, 6 Feb 2021 01:44:46 +0100
Subject: [PATCH 20/20] make split_input private, make resplit private, update
 tests and the converter

---
 README.md                | 10 +++++++
 include/ss/converter.hpp | 18 +++++++----
 include/ss/splitter.hpp  | 35 ++++++++++++----------
 test/test_splitter.cpp   | 64 +++++++++++++++++++++++++++-------------
 4 files changed, 86 insertions(+), 41 deletions(-)

diff --git a/README.md b/README.md
index e8f9be6..1044574 100644
--- a/README.md
+++ b/README.md
@@ -48,6 +48,7 @@ Bill (Heath) Gates 65 3.3
  * Works on any type
  * Easy to use
  * No exceptions
+ * Works with quotes, escapes and spacings
  * Columns and rows can be ignored
  * Works with any type of delimiter
  * Can return whole objects composed of converted values
@@ -216,6 +217,15 @@ inline bool ss::extract(const char* begin, const char* end, shape& dst) {
 ```
 The shape enum will be used in an example below. The **inline** is there just to prevent multiple definition errors. The function returns **true** if the conversion was a success, and **false** otherwise. The function uses **const char*** begin and end for performance reasons. 
 
+## Quoting
+Not yet documented.
+
+## Escaping
+Not yet documented.
+
+## Spacing
+Not yet documented.
+
 ## Error handling
 
 Detailed error messages can be accessed via the **error_msg** method, and to enable them the error mode has to be changed to **error_mode::error_string** using the **set_error_mode** method:
diff --git a/include/ss/converter.hpp b/include/ss/converter.hpp
index e5b3de3..e73c5db 100644
--- a/include/ss/converter.hpp
+++ b/include/ss/converter.hpp
@@ -127,7 +127,7 @@ public:
     no_void_validator_tup_t<Ts...> convert(
         line_ptr_type line, const std::string& delim = default_delimiter) {
         split(line, delim);
-        return convert<Ts...>(splitter_.input_);
+        return convert<Ts...>(splitter_.split_input_);
     }
 
     // parses already split line, returns 'T' object with extracted values
@@ -169,7 +169,7 @@ public:
     // same as above, but uses cached split line
     template <typename T, typename... Ts>
     no_void_validator_tup_t<T, Ts...> convert() {
-        return convert<T, Ts...>(splitter_.input_);
+        return convert<T, Ts...>(splitter_.split_input_);
     }
 
     bool valid() const {
@@ -194,20 +194,25 @@ public:
     // contain the beginnings and the ends of each column of the string
     const split_input& split(line_ptr_type line,
                              const std::string& delim = default_delimiter) {
-        splitter_.input_.clear();
+        splitter_.split_input_.clear();
         if (line[0] == '\0') {
-            return splitter_.input_;
+            return splitter_.split_input_;
         }
 
         return splitter_.split(line, delim);
     }
 
+private:
+
+    ////////////////
+    // resplit
+    ////////////////
+
     const split_input& resplit(line_ptr_type new_line, ssize_t new_size,
                                const std::string& delim = default_delimiter) {
         return splitter_.resplit(new_line, new_size, delim);
     }
 
-private:
     ////////////////
     // error
     ////////////////
@@ -373,6 +378,9 @@ private:
     bool bool_error_;
     enum error_mode error_mode_ { error_mode::error_bool };
     splitter<Matchers...> splitter_;
+
+    template <typename ...>
+    friend class parser;
 };
 
 } /* ss */
diff --git a/include/ss/splitter.hpp b/include/ss/splitter.hpp
index 5c32367..dd0c0ec 100644
--- a/include/ss/splitter.hpp
+++ b/include/ss/splitter.hpp
@@ -50,34 +50,39 @@ public:
 
     const split_input& split(line_ptr_type new_line,
                              const std::string& delimiter = default_delimiter) {
-        input_.clear();
+        split_input_.clear();
         return resplit(new_line, -1, delimiter);
     }
 
     void adjust_ranges(const char* old_line) {
-        for (auto& [begin, end] : input_) {
+        for (auto& [begin, end] : split_input_) {
             begin = begin - old_line + line_;
             end = end - old_line + line_;
         }
     }
 
+private:
+    ////////////////
+    // resplit
+    ////////////////
+
     const split_input& resplit(
         line_ptr_type new_line, ssize_t new_size,
         const std::string& delimiter = default_delimiter) {
         line_ = new_line;
 
         // resplitting, continue from last slice
-        if (!input_.empty() && unterminated_quote()) {
-            const auto& last = std::prev(input_.end());
+        if (!split_input_.empty() && unterminated_quote()) {
+            const auto& last = std::prev(split_input_.end());
             const auto [old_line, old_begin] = *last;
             size_t begin = old_begin - old_line - 1;
-            input_.pop_back();
+            split_input_.pop_back();
             adjust_ranges(old_line);
 
             // safety measure
             if (new_size != -1 && static_cast<size_t>(new_size) < begin) {
                 set_error_invalid_resplit();
-                return input_;
+                return split_input_;
             }
 
             begin_ = line_ + begin;
@@ -86,7 +91,6 @@ public:
         return split_impl_select_delim(delimiter);
     }
 
-private:
     ////////////////
     // error
     ////////////////
@@ -213,7 +217,7 @@ private:
 
     void shift_and_push() {
         shift_and_set_current();
-        input_.emplace_back(begin_, curr_);
+        split_input_.emplace_back(begin_, curr_);
     }
 
     void shift_and_jump_escape() {
@@ -237,7 +241,7 @@ private:
         switch (delimiter.size()) {
         case 0:
             set_error_empty_delimiter();
-            return input_;
+            return split_input_;
         case 1:
             return split_impl(delimiter[0]);
         default:
@@ -248,7 +252,7 @@ private:
     template <typename Delim>
     const split_input& split_impl(const Delim& delim) {
 
-        if (input_.empty()) {
+        if (split_input_.empty()) {
             begin_ = line_;
         }
 
@@ -257,7 +261,7 @@ private:
         for (done_ = false; !done_; read(delim))
             ;
 
-        return input_;
+        return split_input_;
     }
 
     ////////////////
@@ -319,7 +323,7 @@ private:
                     // eg: ..."hell\0 -> quote not terminated
                     if (*end_ == '\0') {
                         set_error_unterminated_quote();
-                        input_.emplace_back(line_, begin_);
+                        split_input_.emplace_back(line_, begin_);
                         done_ = true;
                         break;
                     }
@@ -353,7 +357,7 @@ private:
                     // mismatched quote
                     // eg: ...,"hel"lo,... -> error
                     set_error_mismatched_quote(end_ - line_);
-                    input_.emplace_back(line_, begin_);
+                    split_input_.emplace_back(line_, begin_);
                 }
                 done_ = true;
                 break;
@@ -375,9 +379,10 @@ private:
     line_ptr_type line_;
     bool done_;
     size_t escaped_{0};
+    split_input split_input_;
 
-public:
-    split_input input_;
+    template <typename ...>
+    friend class converter;
 };
 
 } /* ss */
diff --git a/test/test_splitter.cpp b/test/test_splitter.cpp
index 82b2b10..50ea6af 100644
--- a/test/test_splitter.cpp
+++ b/test/test_splitter.cpp
@@ -517,14 +517,27 @@ auto expect_unterminated_quote(Splitter& s, const std::string& line) {
     return vec;
 }
 
+namespace ss {
+// Used to test resplit since it is only accessible via friend class converter
+template <typename... Matchers>
+class converter {
+public:
+    ss::splitter<Matchers...> splitter;
+    auto resplit(char* new_line, size_t new_line_size) {
+        return splitter.resplit(new_line, new_line_size);
+    }
+};
+} /* ss */
+
 TEST_CASE("testing unterminated quote") {
     {
-        ss::splitter<ss::quote<'"'>> s;
+        ss::converter<ss::quote<'"'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, "\"just");
         CHECK(vec.size() == 1);
 
         auto new_line = buff.append(R"(",strings)");
-        vec = s.resplit(new_line, strlen(new_line));
+        vec = c.resplit(new_line, strlen(new_line));
         CHECK(s.valid());
         CHECK(!s.unterminated_quote());
         std::vector<std::string> expected{"just", "strings"};
@@ -532,13 +545,14 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>> s;
+        ss::converter<ss::quote<'"'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, "just,some,\"random");
         std::vector<std::string> expected{"just", "some", "just,some,\""};
         CHECK(words(vec) == expected);
 
         auto new_line = buff.append(R"(",strings)");
-        vec = s.resplit(new_line, strlen(new_line));
+        vec = c.resplit(new_line, strlen(new_line));
         CHECK(s.valid());
         CHECK(!s.unterminated_quote());
         expected = {"just", "some", "random", "strings"};
@@ -546,13 +560,14 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>> s;
+        ss::converter<ss::quote<'"'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"("just","some","ran"")");
         std::vector<std::string> expected{"just", "some", R"("just","some",")"};
         CHECK(words(vec) == expected);
 
         auto new_line = buff.append(R"(,dom","strings")");
-        vec = s.resplit(new_line, strlen(new_line));
+        vec = c.resplit(new_line, strlen(new_line));
         CHECK(s.valid());
         CHECK(!s.unterminated_quote());
         expected = {"just", "some", "ran\",dom", "strings"};
@@ -560,14 +575,15 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>> s;
+        ss::converter<ss::quote<'"'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"("just","some","ran)");
         std::vector<std::string> expected{"just", "some", R"("just","some",")"};
         CHECK(words(vec) == expected);
 
         {
             auto new_line = buff.append(R"(,dom)");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(!s.valid());
             CHECK(s.unterminated_quote());
             CHECK(words(vec) == expected);
@@ -575,7 +591,7 @@ TEST_CASE("testing unterminated quote") {
 
         {
             auto new_line = buff.append(R"(",strings)");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(s.valid());
             CHECK(!s.unterminated_quote());
             expected = {"just", "some", "ran,dom", "strings"};
@@ -584,7 +600,8 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+        ss::converter<ss::quote<'"'>, ss::escape<'\\'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"("just\"some","ra)");
         std::vector<std::string> expected{"just\"some"};
         auto w = words(vec);
@@ -592,7 +609,7 @@ TEST_CASE("testing unterminated quote") {
         CHECK(w == expected);
         {
             auto new_line = buff.append(R"(n,dom",str\"ings)");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(s.valid());
             CHECK(!s.unterminated_quote());
             expected = {"just\"some", "ran,dom", "str\"ings"};
@@ -601,7 +618,8 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+        ss::converter<ss::quote<'"'>, ss::escape<'\\'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"("just\"some","ra"")");
         std::vector<std::string> expected{"just\"some"};
         auto w = words(vec);
@@ -609,7 +627,7 @@ TEST_CASE("testing unterminated quote") {
         CHECK(w == expected);
         {
             auto new_line = buff.append(R"(n,dom",str\"ings)");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(s.valid());
             CHECK(!s.unterminated_quote());
             expected = {"just\"some", "ra\"n,dom", "str\"ings"};
@@ -618,7 +636,8 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>, ss::escape<'\\'>> s;
+        ss::converter<ss::quote<'"'>, ss::escape<'\\'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"("just\"some","ra\")");
         std::vector<std::string> expected{"just\"some"};
         auto w = words(vec);
@@ -626,7 +645,7 @@ TEST_CASE("testing unterminated quote") {
         CHECK(w == expected);
         {
             auto new_line = buff.append(R"(n,dom",str\"ings)");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(s.valid());
             CHECK(!s.unterminated_quote());
             expected = {"just\"some", "ra\"n,dom", "str\"ings"};
@@ -635,7 +654,8 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>, ss::trim<' '>> s;
+        ss::converter<ss::quote<'"'>, ss::trim<' '>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"(  "just" ,some,  "ra )");
         std::vector<std::string> expected{"just", "some"};
         auto w = words(vec);
@@ -643,7 +663,7 @@ TEST_CASE("testing unterminated quote") {
         CHECK(w == expected);
         {
             auto new_line = buff.append(R"( n,dom"  , strings   )");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(s.valid());
             CHECK(!s.unterminated_quote());
             expected = {"just", "some", "ra  n,dom", "strings"};
@@ -652,7 +672,8 @@ TEST_CASE("testing unterminated quote") {
     }
 
     {
-        ss::splitter<ss::quote<'"'>, ss::trim<' '>, ss::escape<'\\'>> s;
+        ss::converter<ss::quote<'"'>, ss::trim<' '>, ss::escape<'\\'>> c;
+        auto& s = c.splitter;
         auto vec = expect_unterminated_quote(s, R"(  "ju\"st" ,some,  "ra \")");
         std::vector<std::string> expected{"ju\"st", "some"};
         auto w = words(vec);
@@ -660,7 +681,7 @@ TEST_CASE("testing unterminated quote") {
         CHECK(w == expected);
         {
             auto new_line = buff.append(R"( n,dom"  , strings   )");
-            vec = s.resplit(new_line, strlen(new_line));
+            vec = c.resplit(new_line, strlen(new_line));
             CHECK(s.valid());
             CHECK(!s.unterminated_quote());
             expected = {"ju\"st", "some", "ra \" n,dom", "strings"};
@@ -670,7 +691,8 @@ TEST_CASE("testing unterminated quote") {
 }
 
 TEST_CASE("testing invalid splits") {
-    ss::splitter<ss::quote<'"'>, ss::trim<' '>, ss::escape<'\\'>> s;
+    ss::converter<ss::quote<'"'>, ss::trim<' '>, ss::escape<'\\'>> c;
+    auto& s = c.splitter;
 
     // empty delimiter
     s.split(buff("some,random,strings"), "");
@@ -689,7 +711,7 @@ TEST_CASE("testing invalid splits") {
 
     // invalid resplit
     char new_line[] = "some";
-    auto a = s.resplit(new_line, strlen(new_line));
+    auto a = c.resplit(new_line, strlen(new_line));
     CHECK(!s.valid());
     CHECK(!s.unterminated_quote());
 }