thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "J W (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (THRIFT-4661) Rust enum name wrong case in generated structs
Date Wed, 07 Nov 2018 06:42:00 GMT

     [ https://issues.apache.org/jira/browse/THRIFT-4661?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

J W updated THRIFT-4661:
------------------------
    Description: 
*For this thrift (note lowercase "e" at beginning of enum name):*

enum ePlatform

{ None = 0 }

struct SettingItem

{ 1: ePlatform platform }

*Generated with:*

thrift -gen rs -out ../rust/thrift/src enum_lowercase_prefix.thrift

*Generated Rust fails to compile:*

error[E0412]: cannot find type `ePlatform` in this scope
 --> src\enum_lowercase_prefix.rs:71:24
 
71 | pub platform: Option<ePlatform>,
|^^^^^^^^^ did you mean `EPlatform`?|

 

*In t_rs_generator.cc line 3025:*

return rust_namespace(ttype) + ttype->get_name();

*To match behavior in generate_enum(), probably needs to be:*

return rust_namespace(ttype) + rust_camel_case(ttype->get_name());

  was:
*For this thrift (note lowercase "e" at beginning of enum name):*

enum ePlatform {
 None = 0
}

struct SettingItem {
 1: ePlatform platform
}

*Generated Rust fails to compile:*

error[E0412]: cannot find type `ePlatform` in this scope
 --> src\enum_lowercase_prefix.rs:71:24
 |
71 | pub platform: Option<ePlatform>,
 | ^^^^^^^^^ did you mean `EPlatform`?

 

*In t_rs_generator.cc line 3025:*

return rust_namespace(ttype) + ttype->get_name();

*To match behavior in generate_enum(), probably needs to be:*

return rust_namespace(ttype) + rust_camel_case(ttype->get_name());


> Rust enum name wrong case in generated structs
> ----------------------------------------------
>
>                 Key: THRIFT-4661
>                 URL: https://issues.apache.org/jira/browse/THRIFT-4661
>             Project: Thrift
>          Issue Type: Bug
>          Components: Rust - Compiler
>    Affects Versions: 0.11.0
>            Reporter: J W
>            Priority: Major
>
> *For this thrift (note lowercase "e" at beginning of enum name):*
> enum ePlatform
> { None = 0 }
> struct SettingItem
> { 1: ePlatform platform }
> *Generated with:*
> thrift -gen rs -out ../rust/thrift/src enum_lowercase_prefix.thrift
> *Generated Rust fails to compile:*
> error[E0412]: cannot find type `ePlatform` in this scope
>  --> src\enum_lowercase_prefix.rs:71:24
>  
> 71 | pub platform: Option<ePlatform>,
> |^^^^^^^^^ did you mean `EPlatform`?|
>  
> *In t_rs_generator.cc line 3025:*
> return rust_namespace(ttype) + ttype->get_name();
> *To match behavior in generate_enum(), probably needs to be:*
> return rust_namespace(ttype) + rust_camel_case(ttype->get_name());



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message