dxvk_1: fix build compatibility with GCC 14 (#360918)
[NixPkgs.git] / lib / tests / modules / name-merge-attrsWith-1.nix
blobbbfd5fe0bddecc2a2edf019813c76787d3f198c4
1 { lib, ... }:
2 let
3   inherit (lib) types mkOption;
4 in
6   imports = [
7     # Module A
8     (
9       { ... }:
10       {
11         options.mergedName = mkOption {
12           default = { };
13           type = types.attrsWith {
14             placeholder = "id"; # <- This is beeing tested
15             elemType = types.submodule {
16               options.nested = mkOption {
17                 type = types.int;
18                 default = 1;
19               };
20             };
21           };
22         };
23       }
24     )
25     # Module B
26     (
27       { ... }:
28       {
29         # defines the default placeholder "name"
30         # type merging should resolve to "id"
31         options.mergedName = mkOption {
32           type = types.attrsOf (types.submodule { });
33         };
34       }
35     )
37     # Output
38     (
39       {
40         options,
41         ...
42       }:
43       {
44         options.result = mkOption {
45           default = lib.concatStringsSep "." (options.mergedName.type.getSubOptions options.mergedName.loc)
46           .nested.loc;
47         };
48       }
49     )
50   ];