1 /*!
2 RON is a simple config format which looks similar to Rust syntax.
3 
4 ## Features
5 
6 * Data types
7     * Structs, typename optional
8     * Tuples
9     * Enums
10     * Lists
11     * Maps
12     * Units (`()`)
13     * Optionals
14     * Primitives: booleans, numbers, string, char
15 * Allows nested layout (similar to JSON)
16 * Supports comments
17 * Trailing commas
18 * Pretty serialization
19 
20 ## Syntax example
21 
22 ```rust,ignore
23 Game(
24     title: "Hello, RON!",
25     level: Level( // We could just leave the `Level` out
26         buildings: [
27             (
28                 size: (10, 20),
29                 color: Yellow, // This as an enum variant
30                 owner: None,
31             ),
32             (
33                 size: (20, 25),
34                 color: Custom(0.1, 0.8, 1.0),
35                 owner: Some("guy"),
36             ),
37         ],
38         characters: {
39             "guy": (
40                 friendly: true,
41             ),
42         },
43     ),
44 )
45 ```
46 
47 ## Usage
48 
49 Just add it to your `Cargo.toml`:
50 
51 ```toml
52 [dependencies]
53 ron = "*"
54 ```
55 
56 Serializing / Deserializing is as simple as calling `to_string` / `from_str`.
57 
58 !*/
59 
60 #![doc(html_root_url = "https://docs.rs/ron/0.6.0")]
61 
62 pub mod de;
63 pub mod ser;
64 
65 pub mod error;
66 pub mod value;
67 
68 pub mod extensions;
69 
70 pub use de::{from_str, Deserializer};
71 pub use error::{Error, Result};
72 pub use ser::{to_string, Serializer};
73 pub use value::{Map, Number, Value};
74 
75 mod parse;
76