[ https://issues.apache.org/jira/browse/THRIFT-4529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16682477#comment-16682477 ]
Allen George commented on THRIFT-4529: -------------------------------------- Humorously (I guess this is the story of all programming) this turns out to be more complicated than expected. There are a few cases: 1. All lowercase. "foo" => "Foo" 2. All uppercase. "FOO" => "Foo" 3. Screaming snake case (most common, I'd assume). "SCREAMING_SNAKE_CASE" => "ScreamingSnakeCase" 4. Snake case. "snake_case" => "SnakeCase" 4. Camel case. "CamelCase" => "CamelCase" The problem is, we have to figure out which one of the situations we're dealing with, because the conversions we'll perform will differ for every one, which is supremely annoying. I tried to avoid having to differentiate between the cases, but, the default implementations of {{t_generator::camelcase}} and {{t_generator::uppercase}} make this impossible. > Rust generation should include #![allow(non_snake_case)] or force conform to > Rust style guidelines > -------------------------------------------------------------------------------------------------- > > Key: THRIFT-4529 > URL: https://issues.apache.org/jira/browse/THRIFT-4529 > Project: Thrift > Issue Type: Improvement > Components: Rust - Compiler > Affects Versions: 0.11.0 > Reporter: Joshua > Assignee: Allen George > Priority: Minor > > Without this, building a project using a thrift file meant for multiple > languages may end up with many compiler warnings similar to the following: > {code:sh} > warning: variant `EXAMPLE_NAME` should have a camel case name such as > `ExampleName` > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)