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
Alex Crichton
88461157f2
Clean up more style
2015-06-07 23:57:50 -07:00
Alex Crichton
68924534e2
Use deref coercions
2015-06-07 23:48:32 -07:00
Alex Crichton
6580b77a20
Re-structure control flow a bit + modernization
2015-06-07 23:47:22 -07:00
Andrzej Janik
8487b63c97
Rework fix for table redefinition to avoid breaking AST-compatiblity
2015-06-06 18:11:48 +02:00
Andrzej Janik
2fcd829b1d
Disallow table redefinitions
2015-06-04 20:23:46 +02:00
Alex Crichton
94023b1d89
Fix serde-only compilation
2015-04-21 12:00:05 -07:00
Alex Crichton
3301c39630
Tweak some style
2015-04-21 09:16:06 -07:00
Oliver Schneider
6e2f2c39e4
most tests work now
2015-04-20 15:11:34 +02:00
Oliver Schneider
ac86f4c941
updated to master
2015-04-20 12:29:58 +02:00
Alex Crichton
41563ee01b
wip
2015-04-02 17:12:37 -07:00
Alex Crichton
2d49247b92
Modularize rustc-serialize support
...
* Add rustc-serialize as a default feature
* Make room for for serde support
2015-04-02 17:07:37 -07:00
Alex Crichton
cd33b87bf9
Bump to 0.1.20
2015-04-01 09:56:05 -07:00
Alex Crichton
c8a5ca4ece
Bump to 0.1.19
2015-03-25 10:11:05 -07:00
Alex Crichton
2c5aa07722
Implement Encodable for Value
...
We can't generically decode into one, but we can generically encode one!
Closes #58
2015-03-20 10:53:36 -07:00
Alex Crichton
b852af0a60
Improve test coverage
2015-03-15 11:26:32 -07:00
Alex Crichton
ff3bb7d255
Reduce usage of unstable features
2015-03-09 11:09:07 -07:00
Alex Crichton
e14c2052b7
Don't upload extra docs on travis
2015-03-03 20:35:04 -08:00
Steven Fackler
93e5ace69c
Add a doc root url
2015-03-03 20:27:09 -05:00
Alex Crichton
1bebfa1394
Move away from deprecated syntax
2015-02-23 14:45:02 -08:00
Alex Crichton
26da27e628
Add support for numbers with underscores
2015-02-11 11:15:48 -08:00
Alex Crichton
95085dba9a
Implement parsing of inline tables
2015-02-07 22:02:32 -08:00
Alex Crichton
0042025904
Bump to 0.1.16
2015-02-03 08:37:05 -08:00
Alex Crichton
b3e9653b7f
Properly escape keys when printing TOML
...
Closes #53
2015-02-02 22:54:46 -08:00
Alex Crichton
68e6c34b90
Move show.rs to display.rs
2015-02-02 22:30:06 -08:00
Alex Crichton
c6b2aea11e
Fix a deprecation warning
2015-02-02 22:29:51 -08:00
Alex Crichton
0a6a1cabde
Add some feature gates
2015-01-29 08:42:02 -08:00
Alex Crichton
482752b5f4
Migrate to as many stable functions as possible
2015-01-27 19:29:58 -08:00
Alex Crichton
909a85069b
Bump to 0.1.15
2015-01-23 08:19:29 -08:00
Alex Crichton
31d99cd425
Remove slash as an escapeable character
2015-01-20 10:00:43 -08:00
Alex Crichton
885db13d09
Don't infinite loop on bad keys
2015-01-19 13:16:42 -08:00
Alex Crichton
3536cb50e6
Update key syntax to TOML master
...
* Bare keys contain a very limited set of characters now.
* Keys in quotes behave the same as basic strings.
Closes #47
2015-01-15 19:47:56 -08:00
Alex Crichton
46a70861d5
Add some tests from the spec
2015-01-15 17:37:13 -08:00
Alex Crichton
0285af245a
Implement new rules for bare key names
...
* Key names are restricted to [a-zA-Z0-9_-]
* Equal signs must be on the same line (as must the next value) as the key
* Quoted keys are allowed and are parsed as basic strings.
Closes #48
2015-01-15 17:34:27 -08:00
Alex Crichton
bc825a5fb5
Expand float parsing to include exponents
...
Closes #50
2015-01-15 16:01:27 -08:00
Alex Crichton
f098d70145
Disallow leading 0s in integers/floats
2015-01-15 15:37:48 -08:00
Alex Crichton
f4b2045de0
Audit string parsing, fixing a few bugs here and there
...
Closes #51
2015-01-15 15:23:37 -08:00
Alex Crichton
5f2c7b4986
Tighten up CRLF parsing
...
Fix lots of false positives with stray \r characters and also fix CRFL parsing
in raw string literals with escapes.
Closes #49
2015-01-15 15:10:42 -08:00
Alex Crichton
9dd46d6fbf
Fix parsing leading +
on numbers
2015-01-15 14:27:55 -08:00
Alex Crichton
0d8ce979a4
Move tests to integration tests
2015-01-15 12:44:05 -08:00
Alex Crichton
d4319caa20
Bump to 0.1.11
2015-01-09 11:50:54 -08:00
Valerii Hiora
7a19808670
Updated serialization traits
2015-01-09 17:24:42 +02:00
Valerii Hiora
1dfb94afba
Update to master
...
- features
- macro reform
- String/Show split in formatter
- staging
2015-01-08 19:50:03 +02:00
Alex Crichton
6195861f53
Remove old_orphan_check
2015-01-06 07:34:16 -08:00
Valerii Hiora
aeb765b723
Fallout of serialize traits changes
2015-01-06 15:39:06 +02:00
Valerii Hiora
887e5ff844
Update to master
...
- updated `rustc-serialize` dependency, in other case `toml-rs`
prohibits `rustc-serialize` update on other crates
- updated after syntax and lib changes
2015-01-03 18:01:19 +02:00
Alex Crichton
2557fc9ab9
Update to rust master
2015-01-01 08:48:47 -08:00
Alex Crichton
31ee496621
Update to rust master
2014-12-23 08:01:45 -08:00
Alex Crichton
f16498b8db
Update to rust master
2014-12-22 08:17:46 -08:00
Alex Crichton
95c6161dce
Update to rust master
2014-12-20 22:35:30 -08:00
Alex Crichton
1346affca9
Remove weird 'invalid toml array of tables' printing
...
Closes #42
2014-12-20 22:33:40 -08:00
Victor Berger
88b09c57e7
Add all now needed ';' after macro invocations.
2014-12-18 22:48:34 +01:00
Victor Berger
5882522112
Update to last rust.
2014-12-18 10:31:20 +01:00
Alex Crichton
944b94c21a
Handle deserializing empty or missing arrays
2014-12-12 13:30:40 -08:00
Alex Crichton
4dce070c70
Update to rust master
2014-12-12 13:19:22 -08:00
Alex Crichton
f9408377c9
Fix parsing nested tables in arrays
...
Closes #36
2014-12-11 22:30:32 -08:00
Alex Crichton
6e4e8251b1
Update to rust master
...
Closes #34
2014-12-06 14:51:51 -08:00
Alex Crichton
b6e487e05b
Update to rust master
2014-12-06 14:48:32 -08:00
Alex Crichton
1297910d25
Update to rust master
2014-12-02 23:57:17 -08:00
Markus Kobler
c7872d82fc
Fixing test json::List -> json::Array
2014-11-22 13:28:41 +00:00
Markus Kobler
d0519edd21
Fixing build errors with latest rust
2014-11-22 13:20:55 +00:00
Victor Berger
bfcfa89e95
Update to namespaced enum variants.
2014-11-18 09:19:13 +01:00