File tree Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -229,6 +229,19 @@ function getOptionTypeTransform(
229229 return returnTransform ;
230230}
231231
232+ function getMapValueTransform ( valueType : TypeNode ) : string {
233+ switch ( valueType . kind ) {
234+ case 'definedTypeLinkNode' :
235+ return '.into_proto()' ;
236+ case 'publicKeyTypeNode' :
237+ return '.to_string()' ;
238+ case 'numberTypeNode' :
239+ return getNumberTypeTransform ( valueType ) ;
240+ default :
241+ return '' ;
242+ }
243+ }
244+
232245function getTransform (
233246 type : TypeNode ,
234247 name : string ,
@@ -259,6 +272,11 @@ function getTransform(
259272 case 'numberTypeNode' :
260273 return `self.${ typeName } ${ getNumberTypeTransform ( type ) } ` ;
261274
275+ case 'mapTypeNode' : {
276+ const valueTransform = getMapValueTransform ( type . value ) ;
277+ return `self.${ typeName } .into_iter().map(|(k, v)| (k, v${ valueTransform } )).collect()` ;
278+ }
279+
262280 default :
263281 return `self.${ typeName } ` ;
264282 }
You can’t perform that action at this time.
0 commit comments