Thomas Fussell
c5d449915f
fix shared string handling
2021-01-02 15:28:14 -05:00
Thomas Fussell
18e82f35d3
Revert "Shared strings"
...
This reverts commit d6262df555
.
2021-01-02 15:20:56 -05:00
Thomas Fussell
90868bdb2a
Merge branch 'master' into issue-509-count-missing
2021-01-02 15:02:37 -05:00
Thomas Fussell
c31b2aa51d
Merge branch 'master' into issue-494-shared-string
2021-01-02 15:01:41 -05:00
Thomas Fussell
08e51ccdc0
Merge branch 'master' into feature/hidden-sheet
2021-01-02 14:58:47 -05:00
Thomas Fussell
f6e43a312d
Merge branch 'master' into feature/hidden-sheet
2021-01-02 14:57:12 -05:00
Thomas Fussell
dd215794db
Merge branch 'master' into issue_503_external_link
2021-01-02 14:54:31 -05:00
Thomas Fussell
566d83d447
Merge branch 'master' into master
2021-01-02 14:41:10 -05:00
胡剑波
dc9f550429
Fix the missing count of fonts and throw an exception.
2020-08-25 16:40:33 +08:00
胡剑波
e8dd38d0d6
Fix throwing exception when duplicate shared strings occur.
2020-08-25 15:08:20 +08:00
胡剑波
dafdfa3ebb
Add the function of getting table hidden attributes.
2020-08-25 13:32:21 +08:00
胡剑波
0ecad78c1d
Fixed an exception thrown when parsing external links.
2020-08-25 09:00:22 +08:00
Adam Hooper
319c4197c1
Streaming: skip empty rows in has_cell()/read_cell()
...
Previously, an empty row would mess with the parser: if we're in an
empty row, our helper methods don't detect us as being in the "row" _or_
in the "sheetData". So `has_cell()` would return false when it
shouldn't. Similarly, `read_cell()` wouldn't skip rows; so `read_cell()`
would return an invalid cell when placed in an empty row, causing a
segfault when the caller tried to use the cell.
Callers must take care to call `has_next()` before `read_next()`. In
the future, perhaps we can make `read_next()` return a `std::optional`
and nix `has_next()` altogether?
[Closes #492 ]
2020-07-28 15:29:12 -04:00
JCrawfy
06801f7d36
derp, need typename too
2020-04-26 15:54:49 +12:00
JCrawfy
6c5a5a5dae
and same issue with is_convertible
2020-04-26 15:49:05 +12:00
JCrawfy
f1042c5119
enable_if_t isn't a thing in C++11
2020-04-26 15:47:53 +12:00
JCrawfy
504fed3585
another missing header
2020-04-26 15:40:56 +12:00
JCrawfy
d30e705f83
fix most (all?) the places where string<->double conversions are performed
...
strod / stod / to_string and all related friends are dependant on current locale for how they format a number
2020-04-25 14:00:58 +12:00
JCrawfy
dfb8f1518e
Revert "redo serialisation by using a sorted vector instead of a lookup for each possible row/column combination"
...
This reverts commit 63484f8b8f
.
2020-04-25 11:15:23 +12:00
JCrawfy
63484f8b8f
redo serialisation by using a sorted vector instead of a lookup for each possible row/column combination
...
Not tested, definitely not as correct as previous implementation
2020-04-25 11:00:39 +12:00
JCrawfy
9136d21845
move the simplified cell_reference and cell structs out to a header
...
the standard xlnt::cell and xlnt::cell_reference have plenty of extra functionality that just slows things down during (de)serialisation
These intermediate structs can be used to minimise overhead before transforming to the final type
2020-04-25 11:00:39 +12:00
JCrawfy
1069c17fbe
fixup comment in parser
2020-04-25 11:00:39 +12:00
JCrawfy
e8e29e9c18
resolve some warnings (unintialised variables), remove warning suppression
2020-04-25 11:00:39 +12:00
JCrawfy
c418c13010
remove a double lookup in the cell map during serialisation
2020-03-01 23:18:13 +13:00
JCrawfy
39f498f401
use the new faster serialisation everywhere in xlsx_producer
2020-03-01 22:01:53 +13:00
JCrawfy
0915fde090
add saving to the spreadsheet-load test, fix a bug in the serialiser
2020-03-01 20:43:56 +13:00
Adam Hooper
ac18fc6dde
Parse inlineStr values
...
inlineStr XML structure is <c><is><t>. This was being parsed incorrectly
when streaming (because has_value wasn't being set to true) and when
reading the whole file (because the <t> was ignored).
[closes #445 ]
2020-02-25 14:32:14 -05:00
Thomas Fussell
e8ee585897
bump copyright year to 2020
2020-02-08 12:12:59 -05:00
Thomas Fussell
39503e8bf0
fix warnings and other minor issues
2019-12-26 12:52:14 -05:00
Thomas Fussell
8014e2fe19
update miniz to 2.1, move to third-party
2019-12-26 12:51:02 -05:00
Thomas Fussell
a560756b35
use clang-format, fix some small warnings
2019-12-26 12:03:12 -05:00
Thomas Fussell
e2262a0c65
Merge pull request #421 from Crzyrndm/experimental/sheet-data-parser
...
Accelerated worksheet parsing
2019-12-19 16:24:51 -05:00
Thomas Fussell
edb27e84f8
Merge pull request #425 from yschungmr/hotfix/gcc-5-build-bug
...
Fixed gcc 5 build bug
2019-12-19 16:13:48 -05:00
Johann1994
d6262df555
Shared strings
...
It can happen that some strings are not unique in sharedstring table
2019-12-18 13:53:23 +01:00
Youngsuk Chung
8e2f197f70
Fix indentation
2019-12-09 14:52:07 +09:00
Youngsuk Chung
c8bda73f01
Fix g++-5 build bug ( Fix #385 )
...
Tested on g++ (Ubuntu 5.4.0-6ubuntu1~16.04.12) 5.4.0 20160609
Note: Actually,it is not a BUG. It is compiler related issue. The issue #385 is not shown in g++-6 and clang.
2019-12-09 14:46:12 +09:00
JCrawfy
f2ad495326
resolve warnings, remove failing test (CI doesn't know what locale "de-DE" is?)
2019-11-18 21:45:46 +13:00
JCrawfy
97841413fa
fixed more parsing errors, added test for ',' locale serialisation (it fails...)
2019-11-18 21:12:21 +13:00
JCrawfy
a25187f788
fix using attribute<double> (causes bugs when '.' is not the decimal separator
2019-11-18 20:46:34 +13:00
JCrawfy
d69a5dea75
scan and replace '.' with ',' when decimal separator is comma
2019-11-18 19:55:13 +13:00
JCrawfy
2eb88c23d6
move numeric utils into the public headers
...
resolves #398
2019-11-18 19:25:02 +13:00
JCrawfy
a6fd7cc2b8
skip the user facing types, deal direct with the impls
...
this was being done already in most cases, and allows some simplification
e.g. no need to check if something is already present, since we're starting with a blank
2019-11-17 13:15:00 +13:00
JCrawfy
2b61cac3dc
move helper functions and types to top of file ( namespace {} )
2019-11-17 11:55:49 +13:00
JCrawfy
600cc9d000
specialised string equality template for literals strings
...
1-2% improvement seen locally
2019-11-17 11:11:33 +13:00
JCrawfy
001606a77c
cleanup and comments
2019-11-17 10:41:05 +13:00
JCrawfy
2307ed4edf
exceptions, not asserts
2019-11-16 19:49:17 +13:00
JCrawfy
a580079702
and more warnings suppressed
2019-11-16 15:03:28 +13:00
JCrawfy
96beae421f
matchup integer types
2019-11-16 14:49:58 +13:00
JCrawfy
9d687eaf49
remove all usages of strtod_c
2019-11-16 14:30:40 +13:00
JCrawfy
e059d259c7
specialise number_converter when strtod_l is available
...
in load benchmark, not using the specialisation adds ~10% to execution time
2019-11-16 14:18:33 +13:00