Repository: ron-rs/ron (rust)

Issue:
Parser doesn't handle whitespace ...
between `(` and `[` of a `newtype_struct` wrapping a `seq`:

```rust

#[derive(Debug, Deserialize)]
struct Newtype(Vec<String>);

fn main() {
    let serialized = stringify!(
        Newtype([
            "a",
            "b",
            "c",
        ])
    );
    println!("{}", serialized);
    let deserialized: Result<Newtype, _> = ron::de::from_str(serialized);
    println!("{:#?}", deserialized);


    let serialized = r#"
        Newtype([
            "a",
            "b",
            "c",
        ])
    "#;
    println!("{}", serialized);
    let deserialized: Result<Newtype, _> = ron::de::from_str(serialized);
    println!("{:#?}", deserialized);
}
```

```
Newtype ( [ "a" , "b" , "c" , ] )
Err(
    Parser(
        ExpectedArray,
        Position {
            col: 10,
            line: 1
        }
    )
)

        Newtype([
            "a",
            "b",
            "c",
        ])
    
Ok(
    Newtype(
        [
            "a",
            "b",
            "c"
        ]
    )
)
```

(This is what I actually came here to report when I got sidetracked by the linguist+ronn history dive 😆)

Pull request:
Allow more whitespace inside newtypes
Fixes #102 

Patch:
diff --git a/src/de/mod.rs b/src/de/mod.rs
index 355851bb..161ae5f1 100644
--- a/src/de/mod.rs
+++ b/src/de/mod.rs
@@ -313,6 +313,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> {
         self.bytes.skip_ws()?;
 
         if self.bytes.consume("(") {
+            self.bytes.skip_ws()?;
             let value = visitor.visit_newtype_struct(&mut *self)?;
             self.bytes.comma()?;
 


Test patch:
diff --git a/tests/big_struct.rs b/tests/big_struct.rs
index 2497bd63..bd512194 100644
--- a/tests/big_struct.rs
+++ b/tests/big_struct.rs
@@ -39,8 +39,12 @@ pub struct ImGuiStyleSave {
     pub anti_aliased_shapes: bool,
     pub curve_tessellation_tol: f32,
     pub colors: ImColorsSave,
+    pub new_type: NewType,
 }
 
+#[derive(Serialize, Deserialize)]
+pub struct NewType(i32);
+
 const CONFIG: &str = "(
     alpha: 1.0,
     window_padding: (x: 8, y: 8),
@@ -66,6 +70,7 @@ const CONFIG: &str = "(
     anti_aliased_shapes: true,
     curve_tessellation_tol: 1.25,
     colors: (text: 4),
+    new_type: NewType(     1  ),
 
     ignored_field: \"Totally ignored, not causing a panic. Hopefully.\",
 )";