Commit Graph

99 Commits

Author SHA1 Message Date
red0124
55d0a4e598
Updated and added new functions related to headers, resolved ODR issues, resolved clang-tidy warnings (#50)
* Bugfix/odr violations (#47)

* Make common non-member functions inline, remove unreachable line from get_line_buffer

* [skip ci] Fix namespace comments

* Resolve clang-tidy warnings (#48)

* Resolve clang-tidy warnings, update single_header_generator.py

* Update single header test, resolve additional clang-tidy warnings

* Add header and raw_header methods,  update header usage methods error handling, write new and update existing unit tests

* Update parser error messages, fix parser tests

* Add [[nodiscard]] where fitting, update unit tests (#49)

* Add const where fitting, make splitter class members private, add #pragma once to ssp.hpp

* Modify header parsing for empty headers, update old and add new tests for header parsing

* Enable the parser to accept a header with one empty field, update unit tests

* Fix test CMakeLists.txt typo
2024-03-14 17:22:57 +01:00
red0124
df2beab6c3
Fix buffer overflow on multiline restricted with unterminated quote and multiple empty lines (#41) 2024-03-01 15:46:34 +01:00
red0124
27bd60b5ce
Fix bug with get_line_buffer when used with data buffer that is not null terminated and does not end with \n (#40) 2024-03-01 02:47:04 +01:00
red0124
d8dcce7f2a
Fix buffer overflow on multiline csv data containing null characters (#38) 2024-02-29 22:03:20 +01:00
ado
f8e14b1fcf [skip ci] Add std:: to invoked C std lib functions 2024-02-25 13:03:52 +01:00
ado
0ebbee1174 [skip ci] Remove obsolete check from get_line_buffer 2024-02-25 12:10:46 +01:00
ado
f2ff40a625 Add strict_realloc 2024-02-25 10:42:11 +01:00
ado
110ee840cc Fix header usage functionality 2024-02-25 03:54:33 +01:00
ado
05f87bc78b [skip ci] Fix line method 2024-02-25 02:57:46 +01:00
ado
88e711a5f7 Add positions method to parser, write unit tests for it, update other parser tests 2024-02-25 02:06:48 +01:00
ado
8881649aca Update get_line_buffer, update new version of get_line_file to work with data that has no new line at eof 2024-02-23 23:25:03 +01:00
ado
3ea8adedfd Add extended tests with no new line at eof 2024-02-22 00:30:05 +01:00
ado
b993eb8852 [skip ci] Update coverage.yml to work with lcov2.0 2024-02-21 19:41:06 +01:00
ado
5e32d722e8 [skip ci] Update coverage.yml, add unit test for files and buffers without new line at the end of the file 2024-02-21 02:19:14 +01:00
ado
59f6591da3 [skip ci] Update coverage.yml 2024-02-21 01:25:53 +01:00
ado
d422667477 [skip ci] Remove some magic numbers 2024-02-19 01:16:19 +01:00
ado
aaa22046a5 Add null data buffer error handler and unit test, resolve TODOs 2024-02-19 01:00:42 +01:00
ado
82f8ed12b4 Fix out of bounds reading for get_line_buffer, write more buffer mode unit tests 2024-02-18 11:20:36 +01:00
ado
4434db29f6 Merge remote-tracking branch 'origin/master' into feature/csv_buffer 2024-02-17 03:39:11 +01:00
ado
7530be1c44 Fix undefined behavior when trying to fetch header information on an empty file 2024-02-17 02:26:19 +01:00
ado
f04ede3a49 Add option to read csv data from a buffer, add some unit tests for the new feature 2024-02-17 00:55:36 +01:00
ado
8b72deb1ed Remove some comments, update README, update ssp.hpp 2023-08-08 14:38:49 +02:00
ado
7df96d95c7 Make line method work on errors too 2023-08-06 19:56:28 +02:00
ado
9c11f22d79 Update rethrow error message line number 2023-08-06 19:43:41 +02:00
ado
a152a8cb4a Apply minor change to iterator, add handling of invalid header 2023-08-06 15:55:23 +02:00
ado
a378998e34 Update parser exception handling for invalid split/conversion 2023-08-06 14:04:21 +02:00
ado
3c0a440fe9 [skip ci] Update README 2023-08-06 12:33:05 +02:00
ado
952ff236ff Fix header generation on empty line buffer 2023-08-05 20:48:01 +02:00
ado
7d44d503d9 Update the remainder of the unit tests to handle throw_on_error, make parser not set error if all lines are empty 2023-08-05 19:58:00 +02:00
ado
2e1c4c97ec Fix handling of invalid conversion/split within parser, update parser tests 2023-08-05 18:11:13 +02:00
ado
03870aa1ba Update header parsing 2023-08-05 13:30:14 +02:00
ado
2b132bc33a Apply minor changes to tests 2023-08-05 12:05:17 +02:00
ado
a7ea9e42e5 Update error handling methods 2023-08-05 11:45:31 +02:00
ado
634abdd38b Add invalid header usage tests 2023-08-04 21:22:23 +02:00
ado
c981ed6644 Write additional parser tests, update some of the existing tests to work with throw_on_error 2023-08-04 16:48:07 +02:00
ado
5f46259914 Merge with bugfix 2023-07-31 21:52:08 +02:00
ado
fbe19de70c Merge remote-tracking branch 'origin/bugfix/terminated_escape_on_quoted_multiline' into improvement/throw_on_error 2023-07-31 21:50:45 +02:00
ado
27ef7f2e21 Fix bug where the parsing of data containing escaped new lines within quotes would produce bad outputs 2023-07-31 21:49:15 +02:00
ado
84a7d46cbf WIP, Continue writing additional parser tests, add big object flag to test cmake 2023-07-30 22:59:37 +02:00
ado
a9903f7441 Add TODO comments 2023-07-29 16:47:50 +02:00
ado
31cbd20f8f WIP, Continue writing additional parser tests 2023-07-28 00:17:22 +02:00
ado
6dfc30d5c9 WIP, Fix merge compile error 2023-07-25 01:01:06 +02:00
ado
a6db4a7ad2 WIP, Write additional parser tests 2023-07-25 00:56:38 +02:00
ado
77631b8c0d Merge remote-tracking branch 'origin/master' into improvement/throw_on_error 2023-07-25 00:53:51 +02:00
ado
6edce88d79 Fix bug where the default delimiter would be used for multiline data 2023-07-25 00:36:53 +02:00
ado
7d0a5598a8 Merge branch 'improvement/throw_on_error' of https://github.com/red0124/ssp into improvement/throw_on_error 2023-07-23 13:12:37 +02:00
ado
29c471e33a Update valid method for throw_on_error 2023-07-16 20:26:09 +02:00
ado
0ff86630f8 Add comment 2023-07-16 18:26:24 +02:00
ado
5ab41c0315 Fix bug where header reading corrupted the current line buffer 2023-07-16 18:25:15 +02:00
ado
03f5b839fc Minor changes 2023-07-13 22:29:49 +02:00