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
7f53b585f9
Remove usage of ftell when updating cursor position value
2024-03-02 00:34:19 +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
c5b50f2b47
Fix compile issues for c++20 ( #39 )
2024-03-01 00:52:00 +01:00
red0124
d8dcce7f2a
Fix buffer overflow on multiline csv data containing null characters ( #38 )
2024-02-29 22:03:20 +01:00
b660310acf
[skip ci] Merge with master
2024-02-25 18:27:26 +01:00
0a695cf09e
Add ss::uint8 and ss::int8, add unit tests for them
2024-02-25 17:46:35 +01:00
f8e14b1fcf
[skip ci] Add std:: to invoked C std lib functions
2024-02-25 13:03:52 +01:00
0ebbee1174
[skip ci] Remove obsolete check from get_line_buffer
2024-02-25 12:10:46 +01:00
f4a06d40e7
Fix non-POSIX get_line
2024-02-25 10:53:21 +01:00
f2ff40a625
Add strict_realloc
2024-02-25 10:42:11 +01:00
110ee840cc
Fix header usage functionality
2024-02-25 03:54:33 +01:00
05f87bc78b
[skip ci] Fix line method
2024-02-25 02:57:46 +01:00
88e711a5f7
Add positions method to parser, write unit tests for it, update other parser tests
2024-02-25 02:06:48 +01:00
383de57f9a
Make ssize_t equal to intptr_t for non-POSIX environments
2024-02-24 19:09:41 +01:00
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
c0d3087f85
Fix reallocation issues with non-POSIX get_line
2024-02-23 21:56:44 +01:00
273e8ad950
Merge with master, resolve conflicts
2024-02-23 02:49:13 +01:00
09e628020d
Fix typo in common.hpp
2024-02-23 01:01:31 +01:00
ea21b9ba04
Fix get_line possible leak
2024-02-23 00:59:58 +01:00
230da6a3f2
Update getline implementation for non-POSIX systems
2024-02-22 23:59:58 +01:00
3ea8adedfd
Add extended tests with no new line at eof
2024-02-22 00:30:05 +01:00
b993eb8852
[skip ci] Update coverage.yml to work with lcov2.0
2024-02-21 19:41:06 +01:00
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
59f6591da3
[skip ci] Update coverage.yml
2024-02-21 01:25:53 +01:00
d422667477
[skip ci] Remove some magic numbers
2024-02-19 01:16:19 +01:00
aaa22046a5
Add null data buffer error handler and unit test, resolve TODOs
2024-02-19 01:00:42 +01:00
775b8c93e2
Fix parser tests part 2 segment issues
2024-02-19 00:16:22 +01:00
82f8ed12b4
Fix out of bounds reading for get_line_buffer, write more buffer mode unit tests
2024-02-18 11:20:36 +01:00
4434db29f6
Merge remote-tracking branch 'origin/master' into feature/csv_buffer
2024-02-17 03:39:11 +01:00
7530be1c44
Fix undefined behavior when trying to fetch header information on an empty file
2024-02-17 02:26:19 +01:00
7062888d72
Fix msvc build
2024-02-17 01:07:29 +01:00
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
8b72deb1ed
Remove some comments, update README, update ssp.hpp
2023-08-08 14:38:49 +02:00
672b89b213
Add ability to convert larger numbers without fast_float, write unit tests
2023-08-08 14:11:51 +02:00
b7e5dd28b8
Update splitter tests
2023-08-08 12:10:20 +02:00
deee577c1f
Update conversion for integral values to use std::from_chars
2023-08-07 14:11:06 +02:00
7df96d95c7
Make line method work on errors too
2023-08-06 19:56:28 +02:00
9c11f22d79
Update rethrow error message line number
2023-08-06 19:43:41 +02:00
a152a8cb4a
Apply minor change to iterator, add handling of invalid header
2023-08-06 15:55:23 +02:00
a378998e34
Update parser exception handling for invalid split/conversion
2023-08-06 14:04:21 +02:00
3c0a440fe9
[skip ci] Update README
2023-08-06 12:33:05 +02:00
952ff236ff
Fix header generation on empty line buffer
2023-08-05 20:48:01 +02:00
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
2e1c4c97ec
Fix handling of invalid conversion/split within parser, update parser tests
2023-08-05 18:11:13 +02:00
03870aa1ba
Update header parsing
2023-08-05 13:30:14 +02:00
2b132bc33a
Apply minor changes to tests
2023-08-05 12:05:17 +02:00
a7ea9e42e5
Update error handling methods
2023-08-05 11:45:31 +02:00
81484f737f
Remove std::from_chars from extract.hpp
2023-08-04 22:31:29 +02:00