@@ -5,6 +5,7 @@ use super::BluetoothError;
55
66#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
77pub struct Node {
8+ #[ serde( rename = "@name" ) ]
89 pub name : Option < String > ,
910 #[ serde( rename = "interface" , default ) ]
1011 pub interfaces : Vec < Interface > ,
@@ -14,6 +15,7 @@ pub struct Node {
1415
1516#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
1617pub struct Interface {
18+ #[ serde( rename = "@name" ) ]
1719 pub name : String ,
1820 #[ serde( rename = "method" , default ) ]
1921 pub methods : Vec < Method > ,
@@ -27,6 +29,7 @@ pub struct Interface {
2729
2830#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
2931pub struct Method {
32+ #[ serde( rename = "@name" ) ]
3033 pub name : String ,
3134 #[ serde( rename = "arg" , default ) ]
3235 pub args : Vec < MethodArg > ,
@@ -36,6 +39,7 @@ pub struct Method {
3639
3740#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
3841pub struct Signal {
42+ #[ serde( rename = "@name" ) ]
3943 pub name : String ,
4044 #[ serde( rename = "arg" , default ) ]
4145 pub args : Vec < SignalArg > ,
@@ -45,31 +49,35 @@ pub struct Signal {
4549
4650#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
4751pub struct Property {
52+ #[ serde( rename = "@name" ) ]
4853 pub name : String ,
49- #[ serde( rename = "type" ) ]
54+ #[ serde( rename = "@ type" ) ]
5055 pub dbustype : String ,
56+ #[ serde( rename = "@access" ) ]
5157 pub access : Access ,
5258 #[ serde( rename = "annotation" , default ) ]
5359 pub annotations : Vec < Annotation > ,
5460}
5561
5662#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
5763pub struct MethodArg {
64+ #[ serde( rename = "@name" ) ]
5865 pub name : Option < String > ,
59- #[ serde( rename = "type" ) ]
66+ #[ serde( rename = "@ type" ) ]
6067 pub dbustype : String ,
61- #[ serde( default = "default_method_arg_direction" ) ]
68+ #[ serde( rename = "@direction" , default = "default_method_arg_direction" ) ]
6269 pub direction : Direction ,
6370 #[ serde( rename = "annotation" , default ) ]
6471 pub annotations : Vec < Annotation > ,
6572}
6673
6774#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
6875pub struct SignalArg {
76+ #[ serde( rename = "@name" ) ]
6977 pub name : Option < String > ,
70- #[ serde( rename = "type" ) ]
78+ #[ serde( rename = "@ type" ) ]
7179 pub dbustype : String ,
72- #[ serde( default = "default_signal_arg_direction" ) ]
80+ #[ serde( rename = "@direction" , default = "default_signal_arg_direction" ) ]
7381 pub direction : Direction ,
7482 #[ serde( rename = "annotation" , default ) ]
7583 pub annotations : Vec < Annotation > ,
@@ -85,7 +93,9 @@ fn default_signal_arg_direction() -> Direction {
8593
8694#[ derive( Clone , Debug , Deserialize , PartialEq ) ]
8795pub struct Annotation {
96+ #[ serde( rename = "@name" ) ]
8897 pub name : String ,
98+ #[ serde( rename = "@value" ) ]
8999 pub value : String ,
90100}
91101
0 commit comments