Only print example when there is one

wip/yesman
Chuck 5 years ago committed by Linus Heckemann
parent 4d17d5b31f
commit 5646240870
  1. 15
      nixos/modules/installer/tools/nixos-option/nixos-option.cc

@ -402,6 +402,15 @@ void printAttr(Context & ctx, Out & out, const std::string & path, Value & root)
}
}
bool has_example(Context & ctx, Value & option) {
try {
findAlongAttrPath(ctx.state, "example", ctx.autoArgs, option);
return true;
} catch (Error &) {
return false;
}
}
void printOption(Context & ctx, Out & out, const std::string & path, Value & option)
{
out << "Value:\n";
@ -413,8 +422,10 @@ void printOption(Context & ctx, Out & out, const std::string & path, Value & opt
out << "\n\nType:\n";
printAttr(ctx, out, "type.description", option);
out << "\n\nExample:\n";
printAttr(ctx, out, "example", option);
if (has_example(ctx, option)) {
out << "\n\nExample:\n";
printAttr(ctx, out, "example", option);
}
out << "\n\nDescription:\n";
printAttr(ctx, out, "description", option);

Loading…
Cancel
Save