Beispiel #1
0
 def make_rest_doc(self, path=""):
     content = super(BoolOption, self).make_rest_doc(path)
     fullpath = get_fullpath(self, path)
     if self.negation and self.cmdline is not None:
         if self.cmdline is DEFAULT_OPTION_NAME:
             cmdline = '--%s' % (fullpath.replace('.', '-'), )
         else:
             cmdline = self.cmdline
         neg_cmdline = [
             "--" + _getnegation(argname.lstrip("-"))
             for argname in cmdline.split() if argname.startswith("--")
         ][0]
         content.add(
             ListItem(Strong("command-line for negation:"), neg_cmdline))
     content.add(ListItem(Strong("option type:"), "boolean option"))
     if self.default is not None:
         content.add(ListItem(Strong("default:"), str(self.default)))
     if self._requires is not None:
         requirements = [
             ListItem(Link(opt, opt + ".html"),
                      "must be set to '%s'" % (rval, ))
             for (opt, rval) in self._requires
         ]
         if requirements:
             content.add(ListItem(Strong("requirements:"), *requirements))
     if self._suggests is not None:
         suggestions = [
             ListItem(Link(opt, opt + ".html"),
                      "should be set to '%s'" % (rval, ))
             for (opt, rval) in self._suggests
         ]
         if suggestions:
             content.add(ListItem(Strong("suggestions:"), *suggestions))
     return content
Beispiel #2
0
    def make_rest_doc(self, path=""):
        content = super(ChoiceOption, self).make_rest_doc(path)
        content.add(ListItem(Strong("option type:"), "choice option"))
        content.add(
            ListItem(Strong("possible values:"),
                     *[ListItem(str(val)) for val in self.values]))
        if self.default is not None:
            content.add(ListItem(Strong("default:"), str(self.default)))

        requirements = []

        for val in self.values:
            if val not in self._requires:
                continue
            req = self._requires[val]
            requirements.append(
                ListItem(
                    "value '%s' requires:" % (val, ), *[
                        ListItem(Link(opt, opt + ".html"),
                                 "to be set to '%s'" % (rval, ))
                        for (opt, rval) in req
                    ]))
        if requirements:
            content.add(ListItem(Strong("requirements:"), *requirements))
        return content
Beispiel #3
0
 def make_rest_doc(self, path=""):
     fullpath = get_fullpath(self, path)
     content = Rest(Title(fullpath, abovechar="=", belowchar="="),
                    Directive("contents"))
     if path:
         content.add(Paragraph(Link("back to parent", path + ".html")))
     content.join(Title("Basic Option Information"),
                  ListItem(Strong("name:"), self._name),
                  ListItem(Strong("description:"), self.doc),
                  Title("Sub-Options"))
     stack = []
     prefix = fullpath
     curr = content
     config = Config(self)
     for ending in self.getpaths(include_groups=True):
         subpath = fullpath + "." + ending
         while not (subpath.startswith(prefix)
                    and subpath[len(prefix)] == "."):
             curr, prefix = stack.pop()
         print subpath, fullpath, ending, curr
         sub, step = config._cfgimpl_get_home_by_path(ending)
         doc = getattr(sub._cfgimpl_descr, step).doc
         if doc:
             new = curr.add(
                 ListItem(Link(subpath + ":", subpath + ".html"), Em(doc)))
         else:
             new = curr.add(ListItem(Link(subpath + ":",
                                          subpath + ".html")))
         stack.append((curr, prefix))
         prefix = subpath
         curr = new
     return content
Beispiel #4
0
 def make_rest_doc(self, path=""):
     content = super(ArbitraryOption, self).make_rest_doc(path)
     content.add(ListItem(Strong("option type:"),
                          "arbitrary option (mostly internal)"))
     if self.default is not None:
         content.add(ListItem(Strong("default:"), str(self.default)))
     elif self.defaultfactory is not None:
         content.add(ListItem(Strong("factory for the default value:"),
                              str(self.defaultfactory)))
     return content
Beispiel #5
0
 def make_rest_doc(self, path=""):
     fullpath = get_fullpath(self, path)
     result = Rest(Title(fullpath, abovechar="=", belowchar="="),
                   Directive("contents"),
                   Paragraph(Link("back to parent", path + ".html")),
                   Title("Basic Option Information"),
                   ListItem(Strong("name:"), self._name),
                   ListItem(Strong("description:"), self.doc))
     if self.cmdline is not None:
         cmdline = get_cmdline(self.cmdline, fullpath)
         result.add(ListItem(Strong("command-line:"), cmdline))
     return result
Beispiel #6
0
 def make_rest_doc(self, path=""):
     content = super(StrOption, self).make_rest_doc(path)
     content.add(ListItem(Strong("option type:"), "string option"))
     if self.default is not None:
         content.add(ListItem(Strong("default:"), str(self.default)))
     return content