protected void finish(TypeNativeDataJSON result) { if (fieldGeneratorMapLocationSpecs.have_value) { result.initMapLocationSpecs(); int count = fieldGeneratorMapLocationSpecs.value.Count; for (int num = 0; num < count; ++num) { result.appendMapLocationSpecs(fieldGeneratorMapLocationSpecs.value[num]); } fieldGeneratorMapLocationSpecs.value.Clear(); fieldGeneratorMapLocationSpecs.have_value = false; } else if ((!(result.hasMapLocationSpecs())) && !allow_incomplete) { error("When parsing the object for %what%, the \"MapLocationSpecs\" field was missing."); } if (fieldGeneratorRequestedCoordinates.have_value) { result.setRequestedCoordinates(fieldGeneratorRequestedCoordinates.value); fieldGeneratorRequestedCoordinates.have_value = false; } }