about summary refs log tree commit diff
path: root/pkgs/lib
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2007-11-11 09:27:52 +0000
committerMichael Raskin <7c6f434c@mail.ru>2007-11-11 09:27:52 +0000
commit0ba29c56f8e86848556e9087b07eb8b38f04d9f5 (patch)
tree1cc9ef093effaa0f90f6be5007b754139170ad2d /pkgs/lib
parent7a9d92486f846f222ed04622f4d1424b237710eb (diff)
downloadnixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.tar
nixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.tar.gz
nixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.tar.bz2
nixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.tar.lz
nixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.tar.xz
nixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.tar.zst
nixlib-0ba29c56f8e86848556e9087b07eb8b38f04d9f5.zip
Added converter from new option description format to needed for docbook generation.
svn path=/nixpkgs/trunk/; revision=9626
Diffstat (limited to 'pkgs/lib')
-rw-r--r--pkgs/lib/default.nix13
1 files changed, 13 insertions, 0 deletions
diff --git a/pkgs/lib/default.nix b/pkgs/lib/default.nix
index 0ac86d1e48d5..33b7b3d6c9e5 100644
--- a/pkgs/lib/default.nix
+++ b/pkgs/lib/default.nix
@@ -230,5 +230,18 @@ rec {
             else addDefaultOptionValues defValue {};
       }
     ) (builtins.attrNames defs));
+  
+  optionAttrSetToDocList = (l: attrs:
+    (if (getAttr ["_type"] "" attrs) == "option" then
+      [({
+	inherit (attrs) description;
+      }
+      //(if attrs ? example then {inherit(attrs) example;} else {} )
+      //(if attrs ? default then {inherit(attrs) default;} else {} )
+      //{name = l;}
+      )]
+      else (concatLists (map (s: (optionAttrSetToDocList 
+        (l + (if l=="" then "" else ".") + s) (builtins.getAttr s attrs)))
+        (builtins.attrNames attrs)))));
 
 }