tangled
alpha
login
or
join now
oeiuwq.com
/
flake-aspects
2
fork
atom
fake.modules transposition for aspect-oriented Dendritic Nix. with cross-aspect dependencies. Discussions: https://oeiuwq.zulipchat.com/join/nqp26cd4kngon6mo3ncgnuap/
dendrix.oeiuwq.com/Dendritic.html
dendritic
nix
aspect
oriented
2
fork
atom
overview
issues
1
pulls
pipelines
test including other aspect functor
oeiuwq.com
4 months ago
520807b1
aa319931
+42
1 changed file
expand all
collapse all
unified
split
checkmate.nix
+42
checkmate.nix
···
394
{
395
inherit expr expected;
396
};
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
397
};
398
399
};
···
394
{
395
inherit expr expected;
396
};
397
+
398
+
aspects."test override default provider includes" =
399
+
let
400
+
flake = mkFlake {
401
+
flake.aspects =
402
+
{ aspects, ... }:
403
+
{
404
+
aspectOne =
405
+
{ aspect, ... }:
406
+
{
407
+
classOne.bar = [ "should-not-be-present" ];
408
+
includes = [ aspects.aspectTwo ];
409
+
__functor =
410
+
_:
411
+
# deadnix: skip
412
+
{ class, aspect-chain }:
413
+
{
414
+
includes = [
415
+
{ classOne.bar = [ "from-functor" ]; }
416
+
] ++ map (f: f { message = "hello"; }) aspect.includes;
417
+
};
418
+
};
419
+
aspectTwo.__functor =
420
+
_:
421
+
{ message }:
422
+
# deadnix: skip
423
+
{ class, aspect-chain }:
424
+
{
425
+
classOne.bar = [ message ];
426
+
};
427
+
};
428
+
};
429
+
430
+
expr = (evalMod "classOne" flake.modules.classOne.aspectOne).bar;
431
+
expected = [
432
+
"hello"
433
+
"from-functor"
434
+
];
435
+
in
436
+
{
437
+
inherit expr expected;
438
+
};
439
};
440
441
};