Ethiraric
e69953bf80
Fix more inappropriate use of tabs.
2024-01-23 00:19:04 +01:00
Ethiraric
15e02cf53d
Use type aliases where appropriate.
2024-01-23 00:19:04 +01:00
Ethiraric
acb35b431a
Doccomment is_
series of functions.
2024-01-23 00:19:04 +01:00
Ethiraric
270c75ce03
Fix tab used as indentation checks.
2024-01-23 00:19:04 +01:00
Ethiraric
1afe5e353f
Handle "!!" tag overriding.
2024-01-23 00:19:04 +01:00
Ethiraric
0d50cff2b5
Don't inherit tag directives between documents.
2024-01-23 00:19:04 +01:00
Ethiraric
a502625ce8
Reslove tag directives.
2024-01-23 00:19:04 +01:00
Ethiraric
df48d59150
Remove _
prefix to used method.
2024-01-23 00:19:04 +01:00
Ethiraric
b1be5686bf
Propagate tag to SequenceStart event.
2024-01-23 00:19:04 +01:00
Ethiraric
ddd768e681
Propagate tag to MappingStart event.
2024-01-23 00:19:04 +01:00
Ethiraric
e4c4182020
Minor improvements.
...
* Doc comments
* Helper functions
* Line breaks for readability
2024-01-23 00:19:04 +01:00
Ethiraric
f9eb8c6d60
Move emitter/scanner tests to their folder.
...
Change scanner's complex test:
```diff
- *coffee:
+ *coffee :
amount: 4
- *cookies:
+ *cookies :
amount: 4
```
According to https://play.yaml.io/main/parser , this example was invalid
in the first place. Adding a space makes it so that the colon is not
part of the alias name.
Also fix colons not being able to be part of anchors.
2024-01-23 00:19:04 +01:00
Ethiraric
da67c9a763
Expose ScanError::info
.
...
From https://github.com/chyh1990/yaml-rust/pull/190 .
2023-08-17 23:43:15 +02:00
Ethiraric
2d8c4e8fc9
Add documentation and move tests to their folder.
2023-08-17 23:16:06 +02:00
Ethiraric
91ed5dca21
Clippy set to pedantic.
2023-08-14 16:11:33 +02:00
Alexander Kjäll
beae0f306b
library is now in the crates repo ( #164 )
2021-07-12 15:48:17 +08:00
Yuheng Chen
95d0603129
Bump to v0.4.5
2021-01-03 11:57:28 -08:00
Yuheng Chen
95e1ad2dce
Bump to v0.4.4
2020-06-01 21:02:16 +08:00
Evan Harvey
d5bfbcb047
Spellcheck ( #143 )
...
* Spellcheck src
* Spellcheck README
2020-06-01 20:59:27 +08:00
Yuheng Chen
2be65d069e
fix CI for clippy 0.9
2020-06-01 20:34:13 +08:00
Anton Kochkov
8d26a5eca3
Remove deprecated API
2020-05-27 14:19:22 +08:00
Anton Kochkov
95562ac849
Rust 2018 transition
2020-05-27 14:15:28 +08:00
Hendrik Sollich
faf6e2a8a6
Fix emitting hexlike strings without quotes
...
The emitter omitted quotes for strings that start with `0x` those would
subsequently be parsed as strings again. This should fix #133 .
2019-07-24 16:40:02 +02:00
Yuheng Chen
bd87698008
Bump to v0.4.3
2019-03-07 14:27:03 +08:00
Robin Stocker
a3591b3fef
Fix handling of indicators in plain scalars to conform to YAML 1.2
...
YAML 1.2 has special handling of indicators to be compatible with JSON.
The following is equivalent to `{"a": "b"}` (note, no space after `:`):
{"a":b}
But without the quoted key, a space is required. So the `:` here is part
of the plain scalar:
{a:b} # == {"a:b"}
A plain scalar can also start with a `:` as long as it's followed by
"safe" characters:
{a: :b} # == {"a": ":b"}
(Fixes #118 )
2019-03-04 11:45:39 +11:00
Tibo Delor
0705722551
Format using rustfmt 1.0
2018-12-13 18:35:01 +11:00
David Tolnay
04134ffc47
Address write_with_newline lint
2018-09-16 00:00:48 -07:00
David Tolnay
34da7f5f01
Replace try! with question mark
2018-09-15 23:58:48 -07:00
David Tolnay
1652cf524e
Release 0.4.2
2018-09-15 13:09:48 -07:00
David Tolnay
31a54ded85
Lowercase the recursion limit error message
...
To be consistent with the other errors in this crate.
2018-09-15 13:09:11 -07:00
David Tolnay
66326f23f5
Release 0.4.1
2018-09-15 12:31:11 -07:00
David Tolnay
0e1049d10c
Set html_root_url
2018-09-15 12:30:27 -07:00
David Tolnay
10498b2423
Escape string containing colon
...
I don't know whether this is always necessary but it is required for
correctly serializing `["x: %"]`. If we serialize this without quotes to
`[x: %]` then the result is not valid YAML.
2018-09-15 12:20:14 -07:00
David Tolnay
48c732d077
Ignore should_implement_trait lint
...
The Parser::next method is already a public API.
2018-09-15 10:07:05 -07:00
David Tolnay
05eb495917
Address redundant_field_names lint
2018-09-15 10:06:34 -07:00
David Tolnay
1b25db62bb
Don't yet use tool attrs because they are not stable
2018-09-15 10:02:56 -07:00
David Tolnay
5039af6862
Format with rustfmt 0.99.4
2018-09-15 09:49:08 -07:00
David Tolnay
b75f13e7d3
Merge branch 'master' into prevent-too-deep-recursion
2018-09-15 09:16:25 -07:00
David Tolnay
d5ada3b0ef
Merge pull request #104 from hoodie/feature/test-indentation-behaviour
...
Add tests to show expected indentation interpretation
2018-09-15 09:09:05 -07:00
Konrad Borowski
bbb80f1ee7
Prevent too deep recursion
2018-09-15 12:34:21 +02:00
Hendrik Sollich
97f208bf76
Add tests to show expected indentation interpretation
2018-06-22 21:17:16 +02:00
Hannes De Valkeneer
d355e60edc
Do not quote hyphenated strings unnecessarily.
...
fixes #54
2018-04-20 21:01:45 +02:00
Yuheng Chen
1d679384ee
fix boolean quotes
...
Fix #92
2018-01-03 21:44:54 +08:00
Yuheng Chen
f050b83e4a
Fix warning
2018-01-02 14:57:27 +08:00
Chen Yuheng
db768d59bb
Merge pull request #89 from marcaddeo/master
...
Add a cause() method to EmitError
2017-11-22 10:48:52 +08:00
cetra3
a7df76be5f
Include Scanner
2017-11-15 14:11:39 +10:30
cetra3
b2c59b8950
Allow the Marker from ScanError
2017-11-15 12:06:16 +10:30
Marc Addeo
519e2812e4
Add a cause() method to EmitError
...
For compatibility with error_chain
2017-11-12 12:02:34 -05:00
Chen Yuheng
bafabb4e41
Merge pull request #80 from chris-m-h/pull-parser
...
Make pull parser accessible
2017-11-02 12:16:58 +08:00
Martin Hoffmann
0e2b66a42d
Allow access to Marker’s content.
2017-09-02 13:49:53 +02:00
Christian Hofer
f38c3e11b7
Replace ? by try!
2017-07-16 18:00:50 +02:00
Christian Hofer
00a7d64386
Extract pull parser.
2017-07-15 18:49:27 +02:00
David Tolnay
4b4877686c
Merge pull request #78 from chris-m-h/do-not-clone-on-peek
...
Parser: Do not clone on peeking
2017-07-11 07:04:59 -07:00
Charlie Ozinga
9b21f8026a
Merge branch 'master' of https://github.com/chyh1990/yaml-rust into chyh1990
2017-07-10 10:05:43 -06:00
Christian Hofer
a82dfa78e9
Fix version incompatibilities
...
Also: Fix clippy errors
2017-06-22 09:54:13 +02:00
Christian Hofer
639d288236
Parser: Do not clone on peeking
...
This eliminates calls to clone() and to_owned() in the parser
- Peeking now returns reference only
- To obtain value, fetch_token needs to be called
- The parser was adapted accordingly
- Also: Pass anchor name by value to register_anchor
2017-06-21 10:20:16 +02:00
Christian Hofer
6600c8f4c5
Always pass events by value
...
- The EventReceiver gets ownership of events
- Breaks compatilibility with previous interface
2017-06-19 15:41:26 +02:00
Christian Hofer
28d17fa242
Allow clients ownership of events
...
Also: Optimize built-in Yaml deserializer to avoid one scalar value cloning step.
2017-06-14 10:29:27 +02:00
Hendrik Sollich
aaf06fbce9
correctly emitting deeply nested arrays
2017-06-11 00:19:49 +02:00
Hendrik Sollich
083df3ce4c
correctly emitting nested arrays
...
fixed #70 too
2017-06-10 23:43:15 +02:00
Charlie Ozinga
5fb88bc4bf
Move the compact flag into the emitter itself
2017-05-23 12:18:12 -06:00
Charlie Ozinga
7cc29540f2
Merge branch 'master' of https://github.com/chyh1990/yaml-rust into chyh1990
2017-05-23 11:51:19 -06:00
Hendrik Sollich
3fa9a24739
quoting possible booleans
...
fixes #53
2017-05-22 19:32:08 +02:00
Yuheng Chen
b5f5b66d6e
Allow use integer as key to access HashMap
...
Fix #61
2017-05-13 21:55:32 +08:00
Yuheng Chen
a5c49b9922
Parse special f64 in tag
2017-05-13 21:22:19 +08:00
Yuheng Chen
c3a9141330
Add special f64 parsing
...
Fix #51
2017-05-13 21:17:35 +08:00
Yuheng Chen
4c7a335bac
Fix #65
2017-05-13 20:48:48 +08:00
Charlie Ozinga
528164d6e6
Fix nested arrays, emit compact in-line
2017-05-11 23:29:41 -06:00
Charlie Ozinga
818fed42b0
Rebased and resolved conflicts with the following:
...
https://github.com/chyh1990/yaml-rust/pull/66
https://github.com/chyh1990/yaml-rust/pull/62 (closed in favor of 66)
2017-05-11 12:36:38 -06:00
David Tolnay
083be16860
Implement Error for EmitError
...
Fixes #50 .
2017-05-08 11:43:44 -07:00
David Tolnay
cec5189c13
Fix clippy complaints
2017-05-08 11:35:53 -07:00
David Tolnay
dcfb2bab95
Switch from clippy dependency to cargo-clippy
2017-05-08 11:30:51 -07:00
David Tolnay
0935fc0d57
Revert "fix test: add missing end space"
...
This reverts commit e3826316ad
.
2017-05-08 11:17:30 -07:00
David Tolnay
312b370f4e
Merge pull request #67 from Iazel/patch-1
...
Quotes string starting with a dot
2017-05-08 11:16:27 -07:00
David Tolnay
ea1f4cd0a8
Merge pull request #66 from iredelmeier/trailing-whitespace
...
Do not emit trailing whitespace
2017-05-08 10:54:17 -07:00
David Tolnay
16e6cb1c31
Merge pull request #58 from palfrey/quickcheck
...
Fix quote escaping
2017-05-08 10:48:23 -07:00
David Tolnay
bb72096438
Restore import that was broken in #57
2017-05-08 10:44:17 -07:00
Tom Parker
312efa5d05
Add quoting for " and '
2017-05-08 18:37:19 +01:00
David Tolnay
8755753ed7
Merge pull request #49 from dtolnay/order
...
Always preserve order
2017-05-08 10:29:27 -07:00
Iazel
e3826316ad
fix test: add missing end space
2017-05-06 19:16:00 +02:00
Iazel
a97f7c9c45
Quotes string starting with a dot
...
To understand why we want to do this, please refer to this issue on ktmpl repository (a way to have templates for kubernetes):
https://github.com/InQuicker/ktmpl/issues/15
The problem applies only to string used as keys, but given that the emitters right now doesn't differentiate the two cases for string, I think is better to do it also for values instead of introducing branching and/or flag variables (can't think of cleaner solution for now).
2017-05-06 19:06:10 +02:00
Isobel Redelmeier
24eb8a4294
Do not emit trailing whitespace
2017-05-05 00:11:36 -07:00
Tom Parker
9d5cb99ca2
Remove warnings about unused items
2017-03-12 16:00:10 +00:00
David Tolnay
316eecbbdc
Always preserve order
2017-01-27 20:59:51 -08:00
Yuheng Chen
562eed85a4
Use push_str() instead of extend()
2016-11-24 18:10:49 +08:00
Chen Yuheng
eb66cf0d8e
Merge pull request #46 from chyh1990/fix_emitter_space
...
Emitter: quote strings starts/ends with spaces
2016-11-24 18:01:51 +08:00
Yuheng Chen
23f08da865
Emitter: quote strings starts/ends with spaces
2016-11-24 17:24:02 +08:00
Yuheng Chen
85a1dc81d7
Comment out unreachable states
2016-11-14 11:22:32 +08:00
Martin Hoffmann
e09485ea92
Make YamlLoader implement MarkedEventReceiver.
2016-11-11 11:53:31 +01:00
Martin Hoffmann
9da84a3b41
Introduce a new trait for event receivers that want markers.
2016-11-10 11:53:28 +01:00
Yuheng Chen
6a0e4ad656
always quote empty string
2016-11-10 15:31:07 +08:00
Chen Yuheng
a2e3746ed7
Merge pull request #42 from partim/event-with-marker
...
Pass markers to EventReceiver.
2016-11-10 14:51:34 +08:00
Martin Hoffmann
2438e6b403
Pass markers to EventReceiver.
2016-11-09 13:04:48 +01:00
Antoni Boucher
2269e040a3
Fixed to always avoid quoting when possible.
2016-11-02 16:56:46 -04:00
Antoni Boucher
d4b6dfe316
Added an option to avoid emitting quotes.
2016-11-01 22:03:35 -04:00
Chen Yuheng
c6a136b8ec
Merge pull request #32 from hoodie/bug/emitter
...
fixed: emitter also emits complex keys
2016-10-21 13:12:55 +08:00
Hendrik Sollich
95f414a8ef
added test for emitting equivalence of complex keys
2016-09-24 23:59:09 +02:00
Yuheng Chen
93e7192485
Fix clippy warning
2016-09-22 16:54:51 +08:00
Hendrik Sollich
53b5936a81
fixed: emitter also emits complex keys
2016-09-16 23:32:53 +02:00
Matthew Piziak
79630e0cd1
properly wrap Vec's IntoIter property
2016-08-08 18:21:57 -04:00
Matthew Piziak
b1b5526cf0
remove clone from into_iter
2016-08-08 17:52:24 -04:00
Matthew Piziak
3adfd05000
implement IntoIterator for Yaml
2016-08-08 17:34:38 -04:00
Matthew Piziak
2c520ebead
add into_
counterparts for all as_
methods
...
fix #28
2016-08-07 22:25:30 -04:00
Yuheng Chen
7783c68d5f
Use empty_scalar_with_anchor properly
...
This closes #27 .
2016-07-28 17:36:25 +08:00
Hendrik Sollich
20cf5959cf
Fix logic error that caused infinite loop
2016-06-23 00:22:03 +02:00
Yuheng Chen
15b4a6ef35
Rename NoEvent to Nothing to make clippy happy
2016-06-22 16:05:40 +08:00
Hendrik Sollich
cb28e81e69
returning ScanError instead of running unreachable!()
...
fixes #23
2016-06-22 15:54:22 +08:00
Yuheng Chen
a3ecc9f2d4
Fix assert fail on empty document
...
This closes #20
2016-05-25 13:25:56 +08:00
David Tolnay
ee853ebaba
Add preserve_order feature to use LinkedHashMap instead of BTreeMap
2016-03-20 17:24:06 -07:00
Chen Yuheng
52e86e402b
Merge pull request #14 from dtolnay/grammar
...
Grammar in rustdoc
2016-03-10 20:54:07 +08:00
Yuheng Chen
59234a4a2a
Fix clippy warnings about not
2016-03-10 20:49:24 +08:00
David Tolnay
6d28d041cf
Grammar in rustdoc
2016-03-10 01:55:21 -08:00
David Tolnay
6ba6fec475
Resolve remaining clippy lints and add to Travis build
2016-02-27 16:42:32 -08:00
David Tolnay
b3c34c4f29
Remove common suffix from TokenType enum
...
See https://github.com/Manishearth/rust-clippy/wiki#enum_variant_names
2016-02-27 15:29:36 -08:00
GaveUp
2a0cac7181
Fix tests on 1.0.0 and 1.1.0.
2016-02-07 16:21:05 -06:00
GaveUp
ae6329df30
Add hex and octal integer support.
2016-02-07 15:52:20 -06:00
Yuheng Chen
b2f3fa49b8
Add alias deserialize support
2015-12-16 15:10:02 +08:00
Yuheng Chen
dbb5575452
Fix CR/LF in literal scalar
2015-09-15 15:27:32 +08:00
Yuheng Chen
ab579f1716
Display error line and col number for ScanError
2015-07-02 23:46:04 +08:00
Yuheng Chen
a566c7647c
remove trailing space
2015-06-30 00:31:22 +08:00
m-r-r
a52b22a165
Implementation of std::scanner::Error for ScanError
2015-06-18 23:49:28 +02:00
Yuheng Chen
c1b5dd296f
Better code coverage
2015-06-04 16:10:43 +08:00
Yuheng Chen
691f9d942f
Add document
2015-05-31 17:59:43 +08:00
Yuheng Chen
23b3c7f024
Export API
2015-05-31 17:02:22 +08:00
Yuheng Chen
19fc6027e8
Add basic emitter
2015-05-31 12:56:45 +08:00
Yuheng Chen
6af58dea81
Add LICENSE and build status
2015-05-31 00:13:21 +08:00
Yuheng Chen
8e629d4637
Add tag:yaml.org,2002 parsing
2015-05-30 22:39:50 +08:00
Yuheng Chen
6b61f4357d
Add scan_uri_escapes
2015-05-30 18:49:54 +08:00
Yuheng Chen
10b91f6a31
Add scan_tag_directive_value
2015-05-29 02:57:41 +08:00
Yuheng Chen
9a917eaf29
Add alias event
2015-05-29 02:26:37 +08:00
Yuheng Chen
5d0683c396
Add partial anchor support
2015-05-29 01:56:03 +08:00
Yuheng Chen
5237e538eb
Fix unicode escape
2015-05-28 22:19:06 +08:00
Yuheng Chen
008da5005c
Add VersionDirectiveToken
2015-05-28 22:07:59 +08:00
Yuheng Chen
1b636097c0
Fix test_spec_ex7_3
2015-05-28 17:18:20 +08:00
Yuheng Chen
ee7ef53563
Add flow_sequence_entry_mapping
2015-05-27 23:18:38 +08:00
Yuheng Chen
443b3a2932
Fix parsing bugs
...
1. empty key & value support
2. OnNull handling in test
2015-05-27 23:04:03 +08:00
Yuheng Chen
3224240613
Change empty scalar definition
2015-05-27 21:57:42 +08:00
Yuheng Chen
6984c20df6
Add flow_mapping_key
2015-05-27 21:34:52 +08:00
Yuheng Chen
56e28c630e
Add indentless_sequence_entry
2015-05-27 16:35:31 +08:00
Yuheng Chen
63c0a32918
Refactory YAML document loader
2015-05-27 14:57:44 +08:00
Yuheng Chen
8e43d42621
Add block_scalar
2015-05-27 00:29:40 +08:00
Yuheng Chen
7d1fa94d0d
Add multidoc support
2015-05-26 16:41:35 +08:00
Yuheng Chen
840ccc939f
Add scanner unit tests
2015-05-25 19:32:48 +08:00
Yuheng Chen
8fbdf0be81
Add scalar coersion
2015-05-25 13:54:39 +08:00
Yuheng Chen
1e43e9de95
Add parse for Yaml
2015-05-25 03:29:52 +08:00
Yuheng Chen
78134e144f
Add scan_flow_scalar
2015-05-25 03:21:53 +08:00
Yuheng Chen
a8ab8ebc27
Add Index trait for YAML node
2015-05-25 02:16:28 +08:00
Yuheng Chen
f49d6c0099
Add yaml value coerce
2015-05-25 01:34:18 +08:00
Yuheng Chen
0ab86869e7
fix lookahead spelling
2015-05-24 14:38:54 +08:00
Yuheng Chen
760f935a87
Fix warnings
2015-05-24 14:37:36 +08:00