Beispiel #1
0
    def write_function(self, node):
	from pythondoc.utilities import parent_path

	id = node.attribute('id')
	functionname = pythondoc.utilities.id2name(id)
	funcref = make_html_id(functionname)
	modulename = parent_path(id)
	args, args_desc = self.get_arguments_doc(node)

	# Find oneliner
	oneliner = node.child(tag="Oneliner")
	if oneliner:
	    oneliner = ' - ' + pythondoc.doctree.escape(oneliner.text())
	else:
	    oneliner = ''

	stylesheet = _options.read_value(formatter_name, 'stylesheet')[1]
	header = open_file('header_file')
	self.file.write(S.FUNCTION_HEADER % vars())
       	self.file.write(S.FUNCTION_END)

	if node.child(tag='Description'):
	    self.file.write('\n' + element('H2', "Description") + '\n\n')
	    if args_desc:
		self.file.write(args_desc)
	    self.write_description(node)
    def write_function(self, node):
        from pythondoc.utilities import parent_path

        id = node.attribute('id')
        functionname = pythondoc.utilities.id2name(id)
        funcref = make_html_id(functionname)
        modulename = parent_path(id)
        args, args_desc = self.get_arguments_doc(node)

        # Find oneliner
        oneliner = node.child(tag="Oneliner")
        if oneliner:
            oneliner = ' - ' + pythondoc.doctree.escape(oneliner.text())
        else:
            oneliner = ''

        stylesheet = _options.read_value(formatter_name, 'stylesheet')[1]
        header = open_file('header_file')
        self.file.write(S.FUNCTION_HEADER % vars())
        self.file.write(S.FUNCTION_END)

        if node.child(tag='Description'):
            self.file.write('\n' + element('H2', "Description") + '\n\n')
            if args_desc:
                self.file.write(args_desc)
            self.write_description(node)
    def write_class(self, node):
        # Find methods
        methods, methodlist = self.make_methodhead(node)

        # Find inherited methods
        inherits = node.children(tag="Inherited")
        for base in inherits:
            b_methods, b_methodlist = self.make_methodhead(base)
            methods = methods + S.INHERITS_FROM % base.attribute(
                'HREF') + b_methods
            methodlist = methodlist + b_methodlist

        from pythondoc.utilities import parent_path

        classname = pythondoc.utilities.id2name(node.attribute('id'))
        modulename = parent_path(node.attribute('id'))

        pythondoc.message.information("Making HTML4 page for %s" % classname)

        # Find oneliner
        oneliner = node.child(tag="Oneliner")
        if oneliner:
            oneliner = ' - ' + self.make_text(oneliner)
        else:
            oneliner = ''

        # Find base classes
        bases = self.make_classbases(node)

        # Make inheritance hierarchy
        hierarchy = self.make_hierarchy(node)
        if hierarchy:
            hierarchy = element('H2', 'Inheritance hierarchy:',
            CLASS="ClassHierarchy") + \
          element('P', hierarchy, CLASS="ClassHierarchy")

        stylesheet = _options.read_value(formatter_name, 'stylesheet')[1]
        header = open_file('header_file')
        self.file.write(S.CLASS_HEADER % vars())
        self.write_varhead(node)
        self.file.write(S.CLASS_END)

        if node.child(tag='Description').children():
            self.file.write(element('H2', "Description"))
            self.write_description(node)

        for method, head in methodlist:
            if method.child(tag="Description").children():
                self.file.write(head + '\n')
                argdesc = self.get_arguments_doc(method)[1]
                if argdesc:
                    self.file.write(argdesc)
                self.write_description(method)
Beispiel #4
0
    def write_class(self, node):
	# Find methods
	methods, methodlist = self.make_methodhead(node)

	# Find inherited methods
	inherits = node.children(tag="Inherited")
	for base in inherits:
	    b_methods, b_methodlist = self.make_methodhead(base)
	    methods = methods + S.INHERITS_FROM % base.attribute('HREF') + b_methods
	    methodlist = methodlist + b_methodlist
	    
	from pythondoc.utilities import parent_path

	classname = pythondoc.utilities.id2name(node.attribute('id'))
	modulename = parent_path(node.attribute('id'))

	pythondoc.message.information("Making HTML4 page for %s" % classname)

	# Find oneliner
	oneliner = node.child(tag="Oneliner")
	if oneliner:
	    oneliner = ' - ' + self.make_text(oneliner)
	else:
	    oneliner = ''

	# Find base classes
	bases = self.make_classbases(node)

	# Make inheritance hierarchy
	hierarchy = self.make_hierarchy(node)
	if hierarchy:
	    hierarchy = element('H2', 'Inheritance hierarchy:',
				CLASS="ClassHierarchy") + \
			element('P', hierarchy, CLASS="ClassHierarchy")

	stylesheet = _options.read_value(formatter_name, 'stylesheet')[1]
	header = open_file('header_file')
	self.file.write(S.CLASS_HEADER % vars())
	self.write_varhead(node)
       	self.file.write(S.CLASS_END)

	if node.child(tag='Description').children():
	    self.file.write(element('H2', "Description"))
	    self.write_description(node)

	for method, head in methodlist:
	    if method.child(tag="Description").children():
		self.file.write(head + '\n')
		argdesc = self.get_arguments_doc(method)[1]
		if argdesc:
		    self.file.write(argdesc)
		self.write_description(method)
Beispiel #5
0
    def write_module(self, node):
	"""Called by the doctree for module nodes."""

	# Write the module header
	modulename = node.attribute('id')
	pythondoc.message.information("Making HTML4 page for %s" % modulename)

	stylesheet = _options.read_value(formatter_name, 'stylesheet')[1]
	header = open_file('header_file')
	self.file.write(S.MODULE_HEADER % vars())

	from pythondoc.utilities import parent_path
	parent = parent_path(modulename)
	if parent:
	    self.file.write(S.DECL_IN % (parent, parent))

	self.file.write('<PRE>')

	# Continue traversing the rest of the tree
	modules = node.children(tag="Module")
	for module in modules:
	    f = HTML4Formatter()
	    f.document(module)

	    oneliner = module.child(tag="Oneliner")
	    if oneliner:
		oneliner = S.ONELINER % self.make_text(oneliner)
	    else:
		oneliner = ''
	    id = module.attribute('id')
	    name = pythondoc.utilities.id2name(id)
	    self.file.write(S.MODMODULE % (id, name, oneliner))

	classes = node.children(tag="Class")
	for clazz in classes:
	    f = HTML4Formatter(node)
	    f.document(clazz)

	    oneliner = clazz.child(tag="Oneliner")
	    if oneliner:
		oneliner = S.ONELINER % self.make_text(oneliner)
	    else:
		oneliner = ''
	    href = clazz.attribute('id')
	    classname = pythondoc.utilities.id2name(href)
	    bases = self.make_classbases(clazz)
	    self.file.write(S.MODCLASS % vars())

	functions = node.children(tag="Function")
	funclist = []
	for fun in functions:
	    oneliner = fun.child(tag="Oneliner")
	    if oneliner:
		oneliner = self.make_text(oneliner)
		oneliner_top = S.ONELINER % oneliner
	    else:
		oneliner = oneliner_top = ''

	    funcname = pythondoc.utilities.id2name(fun.attribute('id'))
	    args = self.get_arguments_doc(fun)[0]

	    if fun.child(tag="Description").children():
		funcref = make_html_id(funcname)
		funclist.append((fun, S.FUNCTION_HEAD % vars()))
		MODFUNC = S.MODFUNC_DOC
	    else:
		MODFUNC = S.MODFUNC

	    self.file.write(MODFUNC % vars())

	self.write_varhead(node)

	aliases = node.children(tag="Alias")
	for alias in aliases:
	    name = pythondoc.utilities.id2name(alias.attribute('id'))
	    type = alias.attribute('type')
	    try:
		aliasfor = alias.attribute('HREF')
	    except:
		aliasfor = '***Unknown***'

	    self.file.write(S.MODALIAS % (name, aliasfor, type))

	self.file.write('</PRE>')


	if node.child(tag='Description').children():
	    self.file.write(element('H2', "Description"))
	    self.write_description(node)

	for func, head in funclist:
	    self.file.write(head + '\n')
	    self.write_description(func)
    def write_module(self, node):
        """Called by the doctree for module nodes."""

        # Write the module header
        modulename = node.attribute('id')
        pythondoc.message.information("Making HTML4 page for %s" % modulename)

        stylesheet = _options.read_value(formatter_name, 'stylesheet')[1]
        header = open_file('header_file')
        self.file.write(S.MODULE_HEADER % vars())

        from pythondoc.utilities import parent_path
        parent = parent_path(modulename)
        if parent:
            self.file.write(S.DECL_IN % (parent, parent))

        self.file.write('<PRE>')

        # Continue traversing the rest of the tree
        modules = node.children(tag="Module")
        for module in modules:
            f = HTML4Formatter()
            f.document(module)

            oneliner = module.child(tag="Oneliner")
            if oneliner:
                oneliner = S.ONELINER % self.make_text(oneliner)
            else:
                oneliner = ''
            id = module.attribute('id')
            name = pythondoc.utilities.id2name(id)
            self.file.write(S.MODMODULE % (id, name, oneliner))

        classes = node.children(tag="Class")
        for clazz in classes:
            f = HTML4Formatter(node)
            f.document(clazz)

            oneliner = clazz.child(tag="Oneliner")
            if oneliner:
                oneliner = S.ONELINER % self.make_text(oneliner)
            else:
                oneliner = ''
            href = clazz.attribute('id')
            classname = pythondoc.utilities.id2name(href)
            bases = self.make_classbases(clazz)
            self.file.write(S.MODCLASS % vars())

        functions = node.children(tag="Function")
        funclist = []
        for fun in functions:
            oneliner = fun.child(tag="Oneliner")
            if oneliner:
                oneliner = self.make_text(oneliner)
                oneliner_top = S.ONELINER % oneliner
            else:
                oneliner = oneliner_top = ''

            funcname = pythondoc.utilities.id2name(fun.attribute('id'))
            args = self.get_arguments_doc(fun)[0]

            if fun.child(tag="Description").children():
                funcref = make_html_id(funcname)
                funclist.append((fun, S.FUNCTION_HEAD % vars()))
                MODFUNC = S.MODFUNC_DOC
            else:
                MODFUNC = S.MODFUNC

            self.file.write(MODFUNC % vars())

        self.write_varhead(node)

        aliases = node.children(tag="Alias")
        for alias in aliases:
            name = pythondoc.utilities.id2name(alias.attribute('id'))
            type = alias.attribute('type')
            try:
                aliasfor = alias.attribute('HREF')
            except:
                aliasfor = '***Unknown***'

            self.file.write(S.MODALIAS % (name, aliasfor, type))

        self.file.write('</PRE>')

        if node.child(tag='Description').children():
            self.file.write(element('H2', "Description"))
            self.write_description(node)

        for func, head in funclist:
            self.file.write(head + '\n')
            self.write_description(func)