18 lines
526 B
Text
18 lines
526 B
Text
λ(nix : ../NixPrelude.dhall) →
|
|
let Set = ../Set/Type.dhall
|
|
|
|
let Set/mergeAttrs = ../Set/mergeAttrs.dhall nix
|
|
|
|
let composeExtensions
|
|
: (Set → Set → Set) → (Set → Set → Set) → Set → Set → Set
|
|
= λ(f : Set → Set → Set) →
|
|
λ(g : Set → Set → Set) →
|
|
λ(final : Set) →
|
|
λ(prev : Set) →
|
|
let fApplied = f final prev
|
|
|
|
let prevp = Set/mergeAttrs prev fApplied
|
|
|
|
in Set/mergeAttrs fApplied (g final prevp)
|
|
|
|
in composeExtensions
|