# Test: Manual merge without fold { # Hardcoded merge for 2-field record merge_manual = fun base override => let base_fields = std.record.fields base in let has_field_0 = std.array.length base_fields > 0 in let has_field_1 = std.array.length base_fields > 1 in let key0 = if has_field_0 then std.array.at 0 base_fields else "" in let key1 = if has_field_1 then std.array.at 1 base_fields else "" in let val0 = if has_field_0 then std.record.get key0 base else null in let val1 = if has_field_1 then std.record.get key1 base else null in let result0 = if has_field_0 then if std.record.has_field key0 override then {"%{key0}" = std.record.get key0 override} else {"%{key0}" = val0} else {} in let result1 = if has_field_1 then if std.record.has_field key1 override then {"%{key1}" = std.record.get key1 override} else {"%{key1}" = val1} else {} in result0 & result1, }