Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Edge cases with :camel #73

Open
Elrendio opened this issue Jan 11, 2022 · 0 comments
Open

Edge cases with :camel #73

Elrendio opened this issue Jan 11, 2022 · 0 comments

Comments

@Elrendio
Copy link

Hey 馃憢

Thanks for the awesome crate 馃檹

Reading from the code they're seems to be some un-intentional edge cases with :camel. For example:

  1. my__ident will be converted to MyIdent and not My_Ident.
  2. _my_ident will be converted MyIdent intead of _MyIdent (maybe intentional)

I don't think any of the PascalCase, the CamelCase nor the snake_case conventions specify those edge cases.

My use case for 1 is the following:
We have a data base containing a table with quite a lot of colums, the columns name are therefore scoped with scope_with_multiple_words__my_name. The database is accessed with diesel, the column name is therefore taken as such. I need to convert those columns to a Grpc enum, the enum variants are scoped as: ScopeWithMultipleWords_MyName

I don't have a specific use case for 2, just found that it was weird to remove the first _ if someone intentionally put it there.

Would you be open to such change? If yes, I can submit a PR 馃槉

(I do realise it's a breaking change, I just don't think there's a lot of people with ident containing two or more consecutive underscore)

@Elrendio Elrendio changed the title Precise behavior for snake_case edges cases Edge cases with :camel Jan 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant