Alan Du
d375f4d63a
Store fraction of seconds in times unconditionally
...
This way, times without fractional seconds will be compare equal to
times with 0 fractional seconds if all else is equal. For example,
06:00:00 == 06:00:00.0
Closes https://github.com/alexcrichton/toml-rs/issues/179
2017-05-30 23:50:58 +01:00
Alex Crichton
38c17e6dca
Merge pull request #172 from rap2hpoutre/patch-1
...
add example for from_str
2017-05-10 13:19:47 -05:00
Raphaël Huchet
d5ffc6cc60
add example for to_string
2017-05-10 17:39:19 +02:00
Raphaël Huchet
9158482ed9
Update de.rs
2017-05-10 17:17:58 +02:00
Raphaël Huchet
0d3b3e3a36
add example for from_str
2017-05-10 16:49:35 +02:00
Oliver Schneider
80ed3e7a7b
Document that line/col indices are 0 based
2017-05-09 17:08:26 +02:00
Oliver Schneider
26d39b3a15
Allow extracting the location of the error
2017-05-09 11:22:18 +02:00
Alex Crichton
bac92cdfad
Update doc urls to 0.4
...
Closes #168
2017-05-02 09:20:11 -07:00
Alex Crichton
137157f445
Merge pull request #165 from Keats/master
...
Allow to deserialize/serialize into enums
2017-04-28 15:01:08 -05:00
Vincent Prouillet
a6f22570ae
Address comment and make test pass
2017-04-28 13:00:37 +09:00
Vincent Prouillet
c675b4f259
Deserialize enum in Value
2017-04-25 13:57:35 +09:00
Vincent Prouillet
36f33ff3b3
Remove everything other than enum variant code
2017-04-25 12:06:04 +09:00
Dzmitry Malyshau
962506e5d6
Fixed the serde dependency in the documentation
2017-04-24 10:05:55 -04:00
Vincent Prouillet
7cb357c168
Allow to deserialize/serialize into enums
...
Close #164
2017-04-24 22:13:38 +09:00
Alex Crichton
dc5ff1ef90
Support serde 1.0.0
2017-04-20 10:16:00 -07:00
Daniel Lockyer
469e9f6bd2
Remove lifetimes
2017-04-12 09:29:00 +01:00
Daniel Lockyer
cecb0b58a7
Stop taking references when not needed
2017-04-12 09:29:00 +01:00
Daniel Lockyer
3034a7cf52
Simplify if-statements
2017-04-12 09:28:56 +01:00
Daniel Lockyer
50714395c2
Switch from comparison to is_empty()
2017-04-12 09:24:16 +01:00
Daniel Lockyer
de940a3373
Remove unneeded return statements
2017-04-12 09:24:16 +01:00
Alex Crichton
a87d005cc1
Merge pull request #161 from colin-kiegel/crate-polish
...
Crate polish
2017-04-05 16:50:51 -07:00
Matthias Endler
6f2f475b88
Replace unwrap with expect in public methods
2017-04-05 21:56:18 +02:00
Colin Kiegel
22168aa100
group mod statements consistently
2017-04-05 21:30:32 +02:00
Colin Kiegel
36b9b268ba
remove deadcode (unused since e256931e9b
)
2017-04-05 21:24:11 +02:00
Colin Kiegel
9d761f5614
doc - group link definitions
2017-04-05 20:51:36 +02:00
Alex Crichton
5152f3aca0
Fix backcompat with array definitions
2017-03-31 18:45:00 -07:00
Alex Crichton
b6178aed2a
Relax assertions in substr_offset slightly
...
Closes #152
2017-02-21 20:27:43 -08:00
Alex Crichton
c680668d22
Merge pull request #151 from EPashkin/fix_table_values_sorting
...
Fixed sorting of table values
2017-02-21 09:31:19 -06:00
Alex Crichton
edf22b74a1
Add support for serialize_bytes
...
Just serialize as a list of numbers.
Closes #150
2017-02-21 06:21:00 -08:00
Evgenii Pashkin
ded040ae9e
Fixed sorting of table values
2017-02-19 18:15:58 +03:00
Alex Crichton
2fd12e72d8
Fix displaying empty arrays
...
Closes #145
2017-02-11 09:13:33 -08:00
Alex Crichton
67fb9f1953
Add a serialization helper to put tables last
...
This should help serializing maps where it's unknown up front whether the tables
and/or values come first.
Closes #142
2017-02-10 15:29:36 -08:00
Jonas mg
b5ec7d2c33
Update ser.rs
2017-02-10 14:37:47 +00:00
Jake Goulding
90630d66fb
Remove newline that causes strange rendering
2017-02-09 10:41:58 -05:00
Jake Goulding
f49d0b3246
Tighten up the crate-level docs
2017-02-09 10:12:23 -05:00
Jake Goulding
22c3df7625
Grammar on Value doc strings
2017-02-09 10:09:20 -05:00
Alex Crichton
d02c02d995
Implement Deserializer::set_require_newline_after_table
2017-02-08 21:36:38 -08:00
Alex Crichton
e256931e9b
Rewrite crate with serde support from ground up
...
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
2017-02-08 21:21:18 -08:00
Alex Crichton
0dc5347946
Clarify that serde is supported
...
Closes #122
2017-01-09 17:37:05 -08:00
Alex Crichton
5907e0a7d0
Return encoding errors for NaN and infinite
...
TOML can't actually represent them, so we should bail out.
Closes #125
2016-12-30 17:40:40 -08:00
Alex Crichton
f66b9913f9
Escape control characters when encoding strings
...
Closes #126
2016-12-30 17:34:11 -08:00
nabijaczleweli
594b845b5a
Don't space out the first table or array if not needed
...
Closes #110
2016-09-06 09:01:06 +02:00
Vinzent Steinberg
2299cb3744
Fix a typo
2016-08-16 23:41:53 +02:00
Alex Crichton
4ee9cb72e6
Touch up the encoder/decoder a bit
...
* Whitespace things
* Don't make `State` public
* Remove `#[cfg]` annotations
2016-07-29 10:23:06 -07:00
David Tolnay
c17b75f834
Restore defaulted Deserializer methods
2016-07-29 00:55:52 -07:00
David Tolnay
242b8038a1
Cfg off functions only needed for rustc-serialize or serde
2016-07-28 11:09:50 -07:00
David Tolnay
492690669e
Update to serde 0.8.0
2016-07-28 11:09:40 -07:00
Oliver Schneider
c7d96b191e
next iteration
2016-07-15 16:24:26 +02:00
Oliver Schneider
183646b118
adjust for seq/map ser revamp
2016-07-14 15:28:51 +02:00
Alex Crichton
fb8050d2d5
Merge pull request #101 from leodasvacas/clippy-run
...
Clippy run and implement Default for State and Enconder
2016-06-05 07:46:17 +02:00
leonardo.yvens
e8097b14f1
Clippy run
2016-06-03 23:19:15 -03:00
Alex Crichton
7363dbe7f5
Merge pull request #103 from MarkSwanson/lookup-lifetime-enhancement
...
lookup() and lookup_mut() lifetime enhancements.
2016-06-01 12:36:30 -07:00
Alex Crichton
6f43fc3b29
Fix serde tests on nightly
2016-05-31 10:41:47 -07:00
Mark Swanson
3639e62a3b
Rely on lifetime elision.
2016-05-31 10:20:43 -04:00
Mark Swanson
010e34f637
lookup() and lookup_mut() lifetime enhancements.
...
Rationale:
- The path has nothing to do with the result.
- The path has no need to live as long as the Value/self.
- In some cases it can be hard to actually build a path that meets
the same lifetime requirements as the Value or String slice result.
2016-05-30 16:09:40 -04:00
Alex Crichton
44fc9d9f37
Require newlines to be present after keys
...
Closes #100
2016-05-22 23:30:43 -07:00
James Sanderson
dd7e31ea53
Refactor checking for EOF into method
2016-05-19 01:12:58 +01:00
James Sanderson
112adaaa3f
Accept empty table on last line
2016-05-19 01:09:33 +01:00
James Sanderson
6450da87ba
Failing test for empty table on last line
2016-05-19 00:54:54 +01:00
Alex Crichton
b9280519cc
Fix accepting comments after table definitions
2016-05-16 10:17:51 -07:00
Alex Crichton
c777001598
Accept fractional seconds and timezones in datetime parsing
...
Closes #96
2016-05-12 14:07:34 -07:00
Alex Crichton
1ed6801137
Add option to enable old behavior
...
Cargo will use this in the interim.
2016-05-12 11:28:32 -07:00
James Sanderson
848227c605
Require a newline after table definition
2016-04-17 22:51:43 +01:00
Tae-il Lim
6426b02d3d
Use different method to ensure unicode escape code is ASCII of expected length
2016-04-05 11:13:36 +09:00
Bourgond Aries
644dc88c04
Add a bunch of negative and positive tests
2016-03-28 06:35:39 +02:00
Bourgond Aries
33c49d0357
Leverage fn array_index to fn integer
2016-03-28 06:24:25 +02:00
Bourgond Aries
568dd2ef4b
Fix the indentation to be consistent with the repository
2016-03-27 21:19:03 +02:00
Bourgond Aries
442f663c2d
Add advanced lookup for table names
2016-03-27 20:55:49 +02:00
Bourgond Aries
770052a9a7
Add a test for lookup_mut_advanced
2016-03-27 20:50:25 +02:00
Bourgond Aries
0e3e0654ba
Implement advanced key lookup for lookup_mut
2016-03-27 20:48:23 +02:00
Bourgond Aries
3517215eab
Implement a more advanced algorithm for lookup
...
The new algorithm allows the explicit usage of "" and '' to denote key
names. This is useful for accessing tables or keys that are named in a
non-conventional manner.
2016-03-27 20:46:19 +02:00
Bourgond Aries
b171205c57
Add a test to see if the table's contents have changed
2016-03-25 17:43:32 +01:00
Bourgond Aries
32969ca891
Implement the non-recursive lookup_mut
...
Also include some tests simply by copying and modifying
the other tests for lookup.
2016-03-25 17:33:46 +01:00
Bourgond Aries
9b1dc843fc
Add lookup_mut method for mutable access
...
Mutable access may sometimes be desired in order to change values
in the toml table. This can be used for dynamic configurations which
will be easy to modify and store.
lookup_mut requires a recursive method due to the borrow checker
not allowing to have more than one mutable reference in the same
scope.
2016-03-24 14:18:00 +01:00
Alex Crichton
511c235d7d
Fix last tests
2016-03-11 09:20:32 -08:00
Alex Crichton
3345fea319
Fix an error message test, simlify some serde code
2016-03-11 01:32:16 -08:00
Alex Crichton
d02e622330
WIP
2016-03-07 23:48:01 -08:00
Alex Crichton
6b0a1362a1
Support literal strings in table names
...
Closes #85
2016-01-24 10:50:39 -08:00
Corey Farwell
7be39d725d
Address issues found by rust-clippy
2016-01-21 08:38:09 -05:00
Jake Goulding
67107034fc
Minor documentation grammar fix
2016-01-01 17:57:01 -05:00
Alex Crichton
39d77b6d79
When decoding maps, leave fields that weren't processed
...
Fixes an XXX
2015-12-18 16:29:07 -08:00
Cameron Silvestrini
caa4615536
Fixed bug: floats always end up in Decoder.toml, even when they have
...
been successfully decoded.
2015-12-15 22:43:24 +11:00
osboxes.org
dea8646b8b
Allow BOM (Byte order mark) in toml
2015-10-07 11:35:49 +02:00
Guillaume Gomez
db75e532e5
Add Clone derive on ParserError
2015-09-30 00:00:17 +02:00
Kerhong
547e202c15
Implement Value::lookup for empty path to return self
2015-09-25 19:26:47 +03:00
mseri
dc0aa5f6c4
Fixed typo
2015-08-29 12:47:21 +01:00
Alex Gulyás
64ae43a386
Fix the arithmetic overflow in Parser::to_linecol
...
This also changes the calculated line and column numbers. Without this
patch, if an error occurs at the end of a line, the returned line and
column numbers will point at the start of the next line.
After this patch, the line and column numbers will correctly point at
the end of the line where the actual parse error happened.
2015-08-14 14:54:32 +02:00
Alex Crichton
7ec4821bd7
Touch up some style in the decoder
2015-08-13 09:47:40 -07:00
Erick Tryzelaar
85cd6f3e6e
Rewrite the MapVisitor to add errors for a specific field
2015-08-13 08:25:56 -07:00
Erick Tryzelaar
8c33064c2c
Override the numeric hints to not deserialize ints into floats, and vice versa
2015-08-13 08:25:56 -07:00
Erick Tryzelaar
e5efc8801d
Add a Deserialize::visit_enum that tries to deserialize into each variant
...
This could be more efficiently done if serde communicated the
number of arguments in each variant in this function.
2015-08-13 08:25:56 -07:00
Erick Tryzelaar
b7b31bf9da
Implement Serialize::visit_newtype_{struct,variant}
...
These functions allow a serializer to not wrap a newtyped value
inside of a tuple or struct.
2015-08-13 07:42:06 -07:00
Erick Tryzelaar
bbc167cde9
Get serde feature compiling again
2015-08-12 23:01:49 -07:00
Erick Tryzelaar
4e0172a9a5
Merge remote-tracking branch 'remotes/origin/master' into serde
2015-08-12 22:15:58 -07:00
Alex Crichton
b70f6e53b2
Don't need to qualify String
2015-08-11 09:18:52 -07:00
Ben Navetta
8a2282fecd
it helps to actually build with serde enabled
2015-08-06 23:33:39 -04:00
Ben Navetta
00337d088e
implement serde::Deserialize for Value
2015-08-06 23:30:08 -04:00
Alex Crichton
89332806c5
Improve the error message in failing enums
2015-06-23 17:45:48 -07:00
Alex Crichton
27a70d4024
Name the fields of the custom table AST
2015-06-08 00:04:30 -07:00
Alex Crichton
00baf76107
Add a few more tests for redefining tables
2015-06-07 23:58:45 -07:00