lib.types: move variable to its usage, don't check condition twice

The only place `merged` is used already checks if `coercedType.merge ?
v2`, so we don't need to check it again. We can also avoid creating the
variable if coercedTypes.merge doesn't have a v2 attribute.
This commit is contained in:
Eman Resu
2026-05-12 11:23:18 -04:00
parent 9b693534b4
commit db9c713393
+8 -12
View File
@@ -1617,19 +1617,15 @@ rec {
def
// {
value =
let
merged =
if coercedType.merge ? v2 then
checkV2MergeCoherence loc coercedType (
coercedType.merge.v2 {
inherit loc;
defs = [ def ];
}
)
else
null;
in
if coercedType.merge ? v2 then
let
merged = checkV2MergeCoherence loc coercedType (
coercedType.merge.v2 {
inherit loc;
defs = [ def ];
}
);
in
if merged.headError == null then coerceFunc def.value else def.value
else if coercedType.check def.value then
coerceFunc def.value