aboutsummaryrefslogtreecommitdiff
path: root/src/de.rs
AgeCommit message (Collapse)AuthorLines
2019-01-07Fix disallowing duplicate table headersAlex Crichton-6/+30
This commit fixes #279 where a case of duplicate table headers slipped through the cracks. This also adds an option to disable this new validation to allow Cargo to preserve backwards compatibility.
2018-12-17Run `cargo fmt`Alex Crichton-232/+335
2018-11-28Merge pull request #264 from azriel91/feature/225/externally-tagged-enumsAlex Crichton-57/+391
Issue 255: Externally tagged enum deserialization
2018-11-21Fix trailing space after date.Eric Huss-7/+6
The space between date and time was being eagerly skipped when it shouldn't.
2018-11-17Maintain backward compatibility with Rust 1.15, take 3.Azriel Hoh-1/+2
2018-11-17Only validate table keys against fields when deserializing enum.Azriel Hoh-18/+27
Issue #225
2018-11-17Maintain compatibility with Rust 1.15Azriel Hoh-2/+2
Issue #225
2018-11-12Error when deserializing struct if encountering unknown fields.Azriel Hoh-0/+41
Issue #225
2018-11-10Maintain compatibility with Rust 1.15Azriel Hoh-1/+1
Issue #225
2018-11-10Implemented deserialization for external enums.Azriel Hoh-71/+175
Issue #225
2018-11-10Better error handling when parsing tuples.Azriel Hoh-12/+35
Issue #225
2018-11-10Implemented enum tuple deserialization.Azriel Hoh-6/+63
Issue #225
2018-11-10Implement deserialization for unit and struct variants.Azriel Hoh-1/+100
Issue #225
2018-09-25Fix multi-line strings are not allowed for keyrhysd-0/+8
In spec https://github.com/toml-lang/toml#keys Quoted keys are clarified as > he exact same rules as either basic strings or literal strings TOML clearly distinguishes basic string and multi-line basic string (literal string is also). https://github.com/toml-lang/toml#string So table key and quoted key should not allow multi-line basic string and multi-line literal string. ABNF definition also describes that. https://github.com/toml-lang/toml/blob/master/toml.abnf ``` string = ml-basic-string / basic-string / ml-literal-string / literal-string quoted-key = basic-string / literal-string ``` `string` contains `ml-*` but `quoted-key` doesn't.
2018-07-27Don't allow intermixing inline tables and dotted key tables.Eric Huss-4/+6
2018-07-16Support older rustc.Eric Huss-4/+4
2018-07-160.5: Support dotted keys.Eric Huss-5/+57
cc #224
2018-07-110.5: Support hex/oct/bin integers.Eric Huss-30/+39
cc #224
2018-07-11Merge pull request #251 from ehuss/datetime-spaceAlex Crichton-0/+11
0.5: Support space separator in datetime.
2018-07-110.5: Support floats nan, inf, and +/-0.0.Eric Huss-0/+9
cc #224
2018-07-100.5: Support space separate in datetime.Eric Huss-0/+11
cc #224
2018-05-07Fix incorrectly reported spans for DatetimeJohn-John Tedro-13/+23
2018-05-07Use BorrowedStrDeserializer instead of generated key deserializersJohn-John Tedro-3/+4
2018-05-07Adjust spans for more complex typesJohn-John Tedro-19/+33
2018-05-07Use custom struct/field naming to deserialize spansJohn-John Tedro-32/+44
2018-05-06Proof of concept: reporting span information to a Spanned<T> typeDavid Tolnay-51/+124
2018-05-01Make Tokenizer emit spansJohn-John Tedro-4/+4
2017-07-06One more case of handling newtype structsAlex Crichton-1/+11
2017-07-06Support deserializing newtypesAlex Crichton-2/+11
Closes #196
2017-05-31Error when parsing numbers outside of f64's rangeAlan Du-0/+6
2017-05-10Update de.rsRaphaël Huchet-1/+1
2017-05-10add example for from_strRaphaël Huchet-0/+31
2017-05-09Document that line/col indices are 0 basedOliver Schneider-0/+2
2017-05-09Allow extracting the location of the errorOliver Schneider-0/+5
2017-04-28Address comment and make test passVincent Prouillet-15/+21
2017-04-25Deserialize enum in ValueVincent Prouillet-1/+3
2017-04-25Remove everything other than enum variant codeVincent Prouillet-97/+0
2017-04-24Allow to deserialize/serialize into enumsVincent Prouillet-1/+134
Close #164
2017-04-20Support serde 1.0.0Alex Crichton-68/+68
2017-04-12Stop taking references when not neededDaniel Lockyer-2/+2
2017-04-12Simplify if-statementsDaniel Lockyer-5/+5
2017-04-12Switch from comparison to is_empty()Daniel Lockyer-3/+3
2017-04-12Remove unneeded return statementsDaniel Lockyer-3/+3
2017-04-05Replace unwrap with expect in public methodsMatthias Endler-3/+3
2017-03-31Fix backcompat with array definitionsAlex Crichton-1/+6
2017-02-08Implement Deserializer::set_require_newline_after_tableAlex Crichton-6/+26
2017-02-08Rewrite crate with serde support from ground upAlex Crichton-0/+1195
This commit completely rewrites this crate from the ground up, supporting serde at the lowest levels as I believe serde support was intended to do. This is a major change from the previous versions of this crate, with a summary of changes being: * Serialization directly to TOML is now supported without going through a `Value` first. * Deserialization directly from TOML is now supported without going through a `Value`. Note that due to the TOML format some values still are buffered in intermediate memory, but overall this should be at a minimum now. * The API of `Value` was overhauled to match the API of `serde_json::Value`. The changes here were to: * Add `is_*` accessors * Add `get` and `get_mut` for one-field lookups. * Implement panicking lookups through `Index` The old `index` methods are now gone in favor of `get` and `Index` implementations. * A `Datetime` type has been added to represent a TOML datetime in a first-class fashion. Currently this type provides no accessors other than a `Display` implementation, but the idea is that this will grow support over time for decomposing the date. * Support for the `rustc-serialize` crate has been dropped, that'll stay on the 0.2 and 0.1 release trains. * This crate no longer supports the detection of unused fields, for that though you can use the `serde_ignored` crate on crates.io