accounts/abi: fix case of generated java functions (#18372)

This commit is contained in:
Guillaume Ballet 2019-01-02 10:22:10 +01:00 committed by GitHub
parent a4af734328
commit 9bfd0b60cc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -381,7 +381,7 @@ func namedTypeJava(javaKind string, solKind abi.Type) string {
// methodNormalizer is a name transformer that modifies Solidity method names to
// conform to target language naming concentions.
var methodNormalizer = map[Lang]func(string) string{
LangGo: capitalise,
LangGo: abi.ToCamelCase,
LangJava: decapitalise,
}
@ -392,10 +392,12 @@ func capitalise(input string) string {
// decapitalise makes a camel-case string which starts with a lower case character.
func decapitalise(input string) string {
// NOTE: This is the current behavior, it doesn't match the comment
// above and needs to be investigated.
return abi.ToCamelCase(input)
if len(input) == 0 {
return input
}
goForm := abi.ToCamelCase(input)
return strings.ToLower(goForm[:1]) + goForm[1:]
}
// structured checks whether a list of ABI data types has enough information to