Repository: not-fl3/nanoserde (rust)

Issue:
Enums without a trailing comma generate error
An Enum without a trailing comma (which is a good practice but not mandatory in Rust syntax) generate an error.
This declaration:
```
#[derive(DeRon)]
enum MyEnum {
    A,
    B,
    C
}
```
results in: 
```

error: proc-macro derive panicked
  --> src/main.rs:10:10
   |
10 | #[derive(DeRon)]
   |          ^^^^^
   |
   = help: message: not implemented: Unexpected type in enum: Type { ident: UnNamed, wraps: None, ref_type: None, as_other: None }
```
while this works fine:
```
#[derive(DeRon)]
enum MyEnum {
    A,
    B,
    C,
}
```
Tested only with DeRon and DeJson, error in both.

Pull request description:
Fix trailing comma in enum issue
closes #83 

Patch:
diff --git a/derive/src/parse.rs b/derive/src/parse.rs
index 6505d0d..e91a521 100644
--- a/derive/src/parse.rs
+++ b/derive/src/parse.rs
@@ -76,7 +76,6 @@ pub enum Category {
         args: Option<Box<Type>>,
         return_type: Option<Box<Type>>,
     },
-    UnNamed,
     Object {
         is_dyn: bool,
         trait_names: Vec<Box<Type>>,
@@ -331,7 +330,6 @@ impl Category {
                     .join(", ")
             ),
             Category::Named { path } => path.clone(),
-            Category::UnNamed => String::default(),
             Category::Object {
                 is_dyn,
                 trait_names,
@@ -995,7 +993,7 @@ fn next_type<T: Iterator<Item = TokenTree> + Clone>(mut source: &mut Peekable<T>
         let as_other = as_other_type(source).map(Box::new);
         if ty.is_empty() {
             Some(Type {
-                ident: Category::UnNamed,
+                ident: Category::None,
                 wraps: None,
                 ref_type,
                 as_other,


Test patch:
diff --git a/tests/parse.rs b/tests/parse.rs
new file mode 100644
index 0000000..fd26909
--- /dev/null
+++ b/tests/parse.rs
@@ -0,0 +1,11 @@
+use nanoserde::{DeBin, DeJson, DeRon, SerBin, SerJson, SerRon};
+
+// https://github.com/not-fl3/nanoserde/issues/83
+#[test]
+fn test_trailing_comma() {
+    #[rustfmt::skip]
+    #[derive(Debug, DeBin, SerBin, DeJson, SerJson, DeRon, SerRon)]
+    enum TestEnum {
+        A
+    }
+}