Commit graph

224 commits

Author SHA1 Message Date
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