Dart: Generate the enum from 0 if value is null and fix inconsistent naming when...
authorWoody Guo <woody.guo@gmail.com>
Tue, 12 Jun 2018 18:35:40 +0000 (02:35 +0800)
committerWouter van Oortmerssen <aardappel@gmail.com>
Tue, 12 Jun 2018 18:35:40 +0000 (11:35 -0700)
* Dart: Generate the enum from 0 if value is null

* Dart: Fix inconsistent naming when generating object builder

src/idl_gen_dart.cpp

index 41343d7..3f2555d 100644 (file)
@@ -210,7 +210,7 @@ class DartGenerator : public BaseGenerator {
     code += "  final int value;\n";
     code += "  const " + name + "._(this.value);\n\n";
     code += "  factory " + name + ".fromValue(int value) {\n";
-    code += "    if (value == null) return null;\n";
+    code += "    if (value == null) value = 0;\n";
 
     code += "    if (!values.containsKey(value)) {\n";
     code +=
@@ -769,7 +769,7 @@ class DartGenerator : public BaseGenerator {
         }
         code += "\n        : null;\n";
       } else if (field.value.type.base_type == BASE_TYPE_STRING) {
-        code += " = fbBuilder.writeString(_" + field.name + ");\n";
+        code += " = fbBuilder.writeString(_" + MakeCamel(field.name, false) + ");\n";
       } else {
         code += " = _" + MakeCamel(field.name, false) +
                 "?.getOrCreateOffset(fbBuilder);\n";