@@ -5,7 +5,6 @@ use std::mem;
55use std:: ops:: { Deref , DerefMut } ;
66
77use byteorder:: { LittleEndian , ReadBytesExt , WriteBytesExt } ;
8- use toml:: Value ;
98
109use crate :: chunks:: io:: { ChunkIdentifier , Header , ReadChunk , WriteChunk } ;
1110use crate :: error:: { Error , Result } ;
@@ -16,18 +15,18 @@ use crate::io::ReadMetadata;
1615/// finalfusion metadata in TOML format.
1716#[ derive( Clone , Debug , PartialEq ) ]
1817pub struct Metadata {
19- inner : Value ,
18+ inner : toml :: Table ,
2019}
2120
2221impl Metadata {
2322 /// Construct new `Metadata`.
24- pub fn new ( data : Value ) -> Self {
25- Metadata { inner : data }
23+ pub fn new ( inner : toml :: Table ) -> Self {
24+ Metadata { inner }
2625 }
2726}
2827
2928impl Deref for Metadata {
30- type Target = Value ;
29+ type Target = toml :: Table ;
3130
3231 fn deref ( & self ) -> & Self :: Target {
3332 & self . inner
@@ -40,9 +39,9 @@ impl DerefMut for Metadata {
4039 }
4140}
4241
43- impl From < Value > for Metadata {
44- fn from ( value : Value ) -> Self {
45- Metadata { inner : value }
42+ impl From < toml :: Table > for Metadata {
43+ fn from ( inner : toml :: Table ) -> Self {
44+ Metadata { inner }
4645 }
4746}
4847
@@ -69,7 +68,7 @@ impl ReadChunk for Metadata {
6968
7069 Ok ( Metadata :: new (
7170 buf_str
72- . parse :: < Value > ( )
71+ . parse :: < toml :: Table > ( )
7372 . map_err ( |e| Error :: Format ( format ! ( "Cannot deserialize TOML metadata: {}" , e) ) )
7473 . map_err ( Error :: from) ?,
7574 ) )
0 commit comments