Marcel Zoll
6170121246
Merge 6f79903b89 into 9eb1142900
2024-01-09 15:02:41 -05:00
James Brown
1b50109f7b
Include property nodes in the long key check ( #1140 )
2022-10-04 18:51:53 -05:00
Igor [hyperxor]
c73ee34704
Small perfomance optimization in Directives and Tag methods ( #1112 )
2022-05-31 18:05:22 -05:00
Igor [hyperxor]
190ad502b5
Remove redundant include ( #1110 )
2022-05-21 07:20:18 -05:00
Dr. Andre Vehreschild
13626af92a
Fix escaping anchors in keys ( #1101 )
2022-04-21 08:19:51 -05:00
Dr. Andre Vehreschild
4c982d59dc
Improve build and fix single cr on windows ( #1099 )
2022-04-19 12:39:55 -05:00
Dr. Andre Vehreschild
a6db7e32ac
Fix single cr not recognized ( #1094 )
...
Complies with YAML Standard [5.4](https://yaml.org/spec/1.2.2/#54-line-break-characters ) [25] instead of matching `\r` only in combination with `\n`.
2022-03-31 22:16:35 -05:00
marcel
6f79903b89
slightly better structure; remove id-constexpr all together in favour of clearer code structure
2022-03-03 12:16:50 +01:00
marcel
0bfa7a70e6
Merge remote-tracking branch 'origin/master'
2022-01-28 13:49:15 +01:00
TheVice
d8d9419092
Fix shared library tests for Windows ( #1074 )
...
Add copying of shared library to the output directory with a test binary.
[binary] removed using of non unsigned char as argument at
'std::isspace' function that was provokes undefined behavior.
[.github/workflows/build.yml] enabled run of test at the
'windows-latest' environment.
2021-12-15 13:38:09 -06:00
Robert Sebastian Herlim
2f8997565b
Use static_cast<unsigned char> on DecodeBase64 to prevent SEGV on negative values ( #1051 )
2021-10-20 10:18:08 -05:00
Pino Toscano
0733aeb451
Revert "Revert "Hide most of non-public symbols by default ( #984 )" ( #1038 )" ( #1045 )
2021-10-09 21:48:05 -05:00
Jesse Beder
0d9dbcfe8c
Revert "Hide most of non-public symbols by default ( #984 )" ( #1038 )
...
This reverts commit da1c8d360e . and fixes #1036 .
2021-09-28 08:41:55 -05:00
Pino Toscano
da1c8d360e
Hide most of non-public symbols by default ( #984 )
...
* Export YAML::detail::node::m_amount
The internal header node/detail/node.h is included by public headers;
YAML::detail::node is implemented in the header itself, and thus it gets
inlined... except for its static m_amount class member, which is
instantiated in the library only. Right now all the symbols of yaml-cpp
are exported (nothing is hidden), so the linker will find node::m_amount
in the yaml-cpp library.
As solution/workaround, explicitly export YAML::detail::node::m_amount.
* CMake: use GenerateExportHeader
Make use of the GenerateExportHeader CMake module to generate the dll.h
header with export macros.
While the produced dll.h is different, the result should be the same,
i.e. nothing changes for yaml-cpp or its users.
* CMake: hide all the symbols by default
Hide all the symbols that are not explicitly exported with YAML_CPP_API.
This way the ABI will be way smaller, and only actually exposing the
public classes/functions.
2021-09-25 12:10:58 -05:00
Snow Pettersen
db6deedcd3
Include name of anchor in invalid anchor error ( #1015 )
2021-07-23 14:52:21 -05:00
theamarin
9ee3928754
Prevent trailing spaces when emitting literal strings ( #1005 )
2021-07-04 22:30:04 -05:00
marcel
5f5b183275
simplify life a little bit
2021-04-28 17:13:04 +02:00
marcel
7a984e275a
return to single arg returns
2021-04-28 15:21:37 +02:00
marcel
abc841d184
get this all compiling; currently with a pair notation; should be a simple return type instead
2021-04-28 15:00:18 +02:00
Chen
98acc5a887
Emit the correct Alias on the key ( #908 ) ( #929 )
2020-07-27 13:49:04 -05:00
Chen
1c9abc8fa4
fix issue743: handle the empty content of flow sep/map correctly during emitting. ( #921 )
...
* fix issue743: handle the empty content of flow sep/map correctly during emitting.
* handle the empty Tag/Anchor properly.
* delete comment
2020-07-24 07:28:40 -05:00
Chen
c2793a36d5
Fix runtime exceptions in Visual Studio environment. ( #926 )
2020-07-23 08:48:20 -05:00
Chen
c3df6d87d4
Properly allow a trailing tab character on a block scalar ( #919 )
...
Fixes #917
2020-07-16 10:08:09 -05:00
Chen
51ce663085
Handle a key with length over 1024 as a long key. ( #916 )
...
Fixes #501
2020-07-16 09:51:54 -05:00
Oliver Hamlet
c82d3129dd
Add support for JSON-compatible string escapes ( #485 )
...
For completeness I've implemented escaping for characters outside the
basic multilingual plane, but it doesn't get used (as there's no
EscapeAsAsciiJson emitter option implemented).
2020-07-13 21:16:34 -05:00
Chen
6d5cfab5fd
fix bug from issue298:Emitter stylings settings overridden by node settings. ( #915 )
2020-07-06 08:16:38 -05:00
Chen
026a53fbe1
Parse colon in plain scalar correctly when in a flow collection
...
Fixes #740 .
2020-07-02 14:08:14 -05:00
Raffaello Bertini
1c2e767347
Fix YAML::Newline in a sequence or map.
...
Inside of a sequence or map, `YAML::Newline` wouldn't reset the collection state, which would cause behavior like this:
```
nodeA:
k: [{i: 0},
{i:1},
]NodeB:
k: [{i: 0},
{i:1},
]
```
2020-07-01 22:31:51 -05:00
Chen
3f381f13a0
remove the wrong swap file. ( #907 )
2020-06-29 08:19:35 -05:00
Chen
08aa252611
Support kinds of emitter format-setting for YAML::Null. ( #906 )
...
* Support kinds of emitter format-setting for YAML::Null.
* update the code and test cases
* add the comment //fallthrough
2020-06-28 23:31:53 -05:00
Chen
5a9ab177ba
tag_null ( #897 )
2020-06-17 12:49:09 -05:00
Chen
72fe73a104
fix issue752: generate right long keys ( #879 )
...
* fix issue752: generate right long keys
* Improve the readability of test cases
* update to raw string literal
2020-06-17 00:57:28 -05:00
Rosen Penev
a7a7908dc5
[clang-tidy] use auto ( #888 )
...
Found with modernize-use-auto
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-16 10:22:14 -05:00
Rosen Penev
0b0bf35c48
[clang-tidy] convert several functions to use references ( #894 )
...
Found with performance-unnecessary-value-param
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 17:34:27 -05:00
Rosen Penev
b2cd008717
partially fix clang compilation ( #893 )
...
* partially fix clang compilation
Missing header and mistaken algorithm usage.
Also removed it name from range loops. It's not correct.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* run through clang's -Wrange-loop-analysis
Some range loops should not use references as they need to copy.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* manual range loop conversions
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 16:59:27 -05:00
Rosen Penev
6387cbc0ca
[clang-tidy] use braced initialization list ( #883 )
...
Found with modernize-return-braced-init-list
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:41:14 -05:00
Rosen Penev
1bf9540a7d
[clang-tidy] fix inconsistent declaration ( #884 )
...
Found with readability-inconsistent-declaration-parameter-name
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:39:04 -05:00
Rosen Penev
4c90f2962e
[clang-tidy] use bool literals ( #881 )
...
Found with modernize-use-bool-literals
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:30:37 -05:00
Rosen Penev
4f6d0733c9
[clang-tidy] use raw strings for easier readability ( #882 )
...
Found with modernize-raw-string-literal
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:29:38 -05:00
Rosen Penev
f05947ae59
[clang-tidy] use emplace_back ( #880 )
...
Found with modernize-use-emplace
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:28:19 -05:00
Rosen Penev
ae811c3d86
[clang-tidy] convert to range loops ( #889 )
...
Found with modernize-loop-convert
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:17:50 -05:00
Rosen Penev
41001d1bf9
manual algorithm conversions ( #891 )
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:10:09 -05:00
Rosen Penev
a808c1f44a
[clang-tidy] do not use return after else ( #892 )
...
Found with readability-else-after-return
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-15 15:09:29 -05:00
Josh Soref
6701275f19
Spelling ( #870 )
...
* spelling: differently
* spelling: irrelevant
* spelling: specified
2020-05-25 09:30:55 -05:00
Raúl Gutiérrez Segalés
f05b2577ad
Fix crash when parsing {x: ( #865 )
2020-05-23 12:17:20 -05:00
Ted Lyngmo
a98b8af448
Add filename to the BadFile exception ( #858 )
...
The BadFile exception which is thrown when failing to open a file now
contains the filename.
2020-05-07 14:46:28 -05:00
Ian Taylor
9f2781b527
Fix clang format ( #854 )
...
Fix invocation of clang-format in CMakeLists and apply clang-format.
2020-04-29 09:40:33 -05:00
Alan Griffiths
4edff1fa5d
Fix stack overflow ( #807 )
...
Fix stack overflow in HandleNode by explicitly limiting the depth of recursion.
2020-04-09 13:02:10 -05:00
Maxim Okhotskiy
6f7ead5171
Maintain order of nodes in sequences ( #668 )
2020-04-07 11:46:34 -05:00
Victor Mataré
cf93f4c57b
Pass a mark to BadSubscript exception ( #843 )
...
It's clearly related to an existing node, so it can have a mark and give
an error location.
2020-04-07 11:33:16 -05:00