@@ -98,12 +98,28 @@ pub struct EncodableDependency {
98
98
99
99
impl EncodableDependency {
100
100
pub fn from_dep ( dependency : Dependency , crate_name : & str ) -> Self {
101
- dependency . encodable ( crate_name, None )
101
+ Self :: encode ( dependency , crate_name, None )
102
102
}
103
103
104
104
pub fn from_reverse_dep ( rev_dep : ReverseDependency , crate_name : & str ) -> Self {
105
105
let dependency = rev_dep. dependency ;
106
- dependency. encodable ( crate_name, Some ( rev_dep. crate_downloads ) )
106
+ Self :: encode ( dependency, crate_name, Some ( rev_dep. crate_downloads ) )
107
+ }
108
+
109
+ // `downloads` need only be specified when generating a reverse dependency
110
+ fn encode ( dependency : Dependency , crate_name : & str , downloads : Option < i32 > ) -> Self {
111
+ Self {
112
+ id : dependency. id ,
113
+ version_id : dependency. version_id ,
114
+ crate_id : crate_name. into ( ) ,
115
+ req : dependency. req ,
116
+ optional : dependency. optional ,
117
+ default_features : dependency. default_features ,
118
+ features : dependency. features ,
119
+ target : dependency. target ,
120
+ kind : dependency. kind ,
121
+ downloads : downloads. unwrap_or ( 0 ) ,
122
+ }
107
123
}
108
124
}
109
125
0 commit comments