general_lib_utils_removeRecursiveValueNullOrEmpty method
void
general_lib_utils_removeRecursiveValueNullOrEmpty()
Implementation
void general_lib_utils_removeRecursiveValueNullOrEmpty() {
removeWhere((key, value) {
if (value == null) {
return true;
}
if (value is String && value.isEmpty) {
return true;
}
if (value is List && value.isEmpty) {
return true;
}
if (value is Map && value.isEmpty) {
return true;
}
if (value is List && value.isEmpty) {
return true;
}
if (value is Map) {
if (value.isEmpty) {
return false;
} else {
value.general_lib_utils_removeRecursiveValueNullOrEmpty();
}
} else if (value is JsonScheme) {
if (value.rawData.isEmpty) {
return true;
} else {
value.rawData.general_lib_utils_removeRecursiveValueNullOrEmpty();
}
}
if (value is List) {
if (value.isEmpty) {
return true;
} else {
if (value is List<Map>) {
for (var element in value) {
element.general_lib_utils_removeRecursiveValueNullOrEmpty();
}
} else if (value is List<JsonScheme>) {
for (var element in value) {
element.rawData
.general_lib_utils_removeRecursiveValueNullOrEmpty();
}
}
}
}
return false;
});
}