fix(php): escape reserved words in enum variables names (#5356)

Signed-off-by: Vincent Giersch <vincent@giersch.fr>
This commit is contained in:
Vincent Giersch
2017-04-10 17:19:06 +02:00
committed by wing328
parent c6959b0d21
commit 99f0ab496b
2 changed files with 12 additions and 4 deletions

View File

@@ -315,7 +315,7 @@ public class PhpClientCodegen extends DefaultCodegen implements CodegenConfig {
}
@Override
public String escapeReservedWord(String name) {
public String escapeReservedWord(String name) {
if(this.reservedWordsMappings().containsKey(name)) {
return this.reservedWordsMappings().get(name);
}
@@ -679,8 +679,8 @@ public class PhpClientCodegen extends DefaultCodegen implements CodegenConfig {
enumName = enumName.replaceFirst("^_", "");
enumName = enumName.replaceFirst("_$", "");
if (enumName.matches("\\d.*")) { // starts with number
return "_" + enumName;
if (isReservedWord(enumName) || enumName.matches("\\d.*")) { // reserved word or starts with number
return escapeReservedWord(enumName);
} else {
return enumName;
}