Clarified choice of types in Java/C# codegen.

Change-Id: I1f094f350145d13b12cbe367bae7c623cfbbd8d3
parent a170b69d
...@@ -252,6 +252,8 @@ static Type DestinationType(const LanguageParameters &lang, const Type &type, ...@@ -252,6 +252,8 @@ static Type DestinationType(const LanguageParameters &lang, const Type &type,
bool vectorelem) { bool vectorelem) {
if (lang.language != GeneratorOptions::kJava) return type; if (lang.language != GeneratorOptions::kJava) return type;
switch (type.base_type) { switch (type.base_type) {
// We use int for both uchar/ushort, since that generally means less casting
// than using short for uchar.
case BASE_TYPE_UCHAR: return Type(BASE_TYPE_INT); case BASE_TYPE_UCHAR: return Type(BASE_TYPE_INT);
case BASE_TYPE_USHORT: return Type(BASE_TYPE_INT); case BASE_TYPE_USHORT: return Type(BASE_TYPE_INT);
case BASE_TYPE_UINT: return Type(BASE_TYPE_LONG); case BASE_TYPE_UINT: return Type(BASE_TYPE_LONG);
...@@ -943,8 +945,8 @@ static bool SaveClass(const LanguageParameters &lang, const Parser &parser, ...@@ -943,8 +945,8 @@ static bool SaveClass(const LanguageParameters &lang, const Parser &parser,
std::string code = "// automatically generated, do not modify\n\n"; std::string code = "// automatically generated, do not modify\n\n";
if (!namespace_general.empty()) { if (!namespace_general.empty()) {
code += lang.namespace_ident + namespace_general + lang.namespace_begin; code += lang.namespace_ident + namespace_general + lang.namespace_begin;
code += "\n\n"; code += "\n\n";
} }
if (needs_includes) code += lang.includes; if (needs_includes) code += lang.includes;
code += classcode; code += classcode;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment