Implements type promotion for Java enum (#6382)

* Implements type promotion for Java enum as suggested in #3890, #5111, #6369

* After generate_code.sh
This commit is contained in:
Stefan de Konink
2021-01-05 20:11:29 +01:00
committed by GitHub
parent 0800976533
commit 1bf1ec0270
2 changed files with 4 additions and 4 deletions

View File

@@ -316,7 +316,7 @@ class JavaGenerator : public BaseGenerator {
auto &ev = **it;
GenComment(ev.doc_comment, code_ptr, &comment_config, " ");
code += " public static final ";
code += GenTypeBasic(enum_def.underlying_type);
code += GenTypeBasic(DestinationType(enum_def.underlying_type, false));
code += " ";
code += ev.name + " = ";
code += enum_def.ToString(ev);

View File

@@ -7,16 +7,16 @@ package MyGame.Example;
*/
public final class Color {
private Color() { }
public static final byte Red = 1;
public static final int Red = 1;
/**
* \brief color Green
* Green is bit_flag with value (1u << 1)
*/
public static final byte Green = 2;
public static final int Green = 2;
/**
* \brief color Blue (1u << 3)
*/
public static final byte Blue = 8;
public static final int Blue = 8;
public static final String[] names = { "Red", "Green", "", "", "", "", "", "Blue", };