add epydoc api documentation
authorgwen <gremond@cadoles.com>
Tue, 22 May 2012 07:25:39 +0000 (09:25 +0200)
committergwen <gremond@cadoles.com>
Tue, 22 May 2012 07:25:39 +0000 (09:25 +0200)
14 files changed:
README
doc/Makefile
doc/build/Makefile
doc/build/pydoc/Makefile [new file with mode: 0644]
doc/build/pydoc/api-objects.txt [new file with mode: 0644]
doc/build/pydoc/crarr.png [new file with mode: 0644]
doc/build/pydoc/epydoc.css [new file with mode: 0644]
doc/build/pydoc/epydoc.js [new file with mode: 0644]
doc/epydoc.sh
doc/index.txt
doc/pydoc/Makefile [deleted file]
doc/pydoc/crarr.png [deleted file]
doc/pydoc/epydoc.css [deleted file]
doc/pydoc/epydoc.js [deleted file]

diff --git a/README b/README
index 25310d8..23929c6 100644 (file)
--- a/README
+++ b/README
@@ -11,7 +11,8 @@ See gpl-3.0.txt for more informations.
 Contributors:
 
 Gwenaël Rémond <gremond@cadoles.com> lead developer
-Emmanuel Garette <egarette@cadoles.com>
+Emmanuel Garette <egarette@cadoles.com> contributor
+
 
 
 
index 7cac92a..f8c7cfe 100644 (file)
@@ -5,7 +5,7 @@ HTMLFRAGMENT=$(addsuffix .html, $(basename $(SRC)))
 
 .PHONY: all clean
 
-all: html code
+all: html code epydoc
 #      make -C ./build/code all
 #      make -C ./build/test all
 #      make -C ./build all
@@ -18,8 +18,9 @@ html: $(HTMLFRAGMENT)
 code:
        ./code2html
 
+epydoc:
+       ./epydoc.sh
+
 clean:
        make -C ./build clean
-       make -C ./pydoc/ clean
-#      make -C ./build/test clean
        
index cc5f93b..a825b9e 100644 (file)
@@ -4,3 +4,4 @@
 clean:
        rm -f *.html
        rm -f api/*.html
+       make -C ./pydoc/ clean
diff --git a/doc/build/pydoc/Makefile b/doc/build/pydoc/Makefile
new file mode 100644 (file)
index 0000000..612cb8f
--- /dev/null
@@ -0,0 +1,5 @@
+.PHONY: clean
+.SUFFIXES:
+
+clean:
+       rm -f *.html
diff --git a/doc/build/pydoc/api-objects.txt b/doc/build/pydoc/api-objects.txt
new file mode 100644 (file)
index 0000000..47dc410
--- /dev/null
@@ -0,0 +1,332 @@
+tiramisu.config        tiramisu.config-module.html
+tiramisu.config.__package__    tiramisu.config-module.html#__package__
+tiramisu.config.auto_factory   tiramisu.config-module.html#auto_factory
+tiramisu.config.special_owner_factory  tiramisu.config-module.html#special_owner_factory
+tiramisu.config.make_dict      tiramisu.config-module.html#make_dict
+tiramisu.config.special_owners tiramisu.config-module.html#special_owners
+tiramisu.config.apply_requires tiramisu.option-module.html#apply_requires
+tiramisu.option        tiramisu.option-module.html
+tiramisu.option.__package__    tiramisu.option-module.html#__package__
+tiramisu.option.reverse_actions        tiramisu.option-module.html#reverse_actions
+tiramisu.option.group_types    tiramisu.option-module.html#group_types
+tiramisu.option.modes  tiramisu.option-module.html#modes
+tiramisu.option.apply_requires tiramisu.option-module.html#apply_requires
+tiramisu.option.available_actions      tiramisu.option-module.html#available_actions
+tiramisu.config.Config tiramisu.config.Config-class.html
+tiramisu.config.Config.set     tiramisu.config.Config-class.html#set
+tiramisu.config.Config.unwrap_from_name        tiramisu.config.Config-class.html#unwrap_from_name
+tiramisu.config.Config.cfgimpl_unfreeze        tiramisu.config.Config-class.html#cfgimpl_unfreeze
+tiramisu.config.Config._validate       tiramisu.config.Config-class.html#_validate
+tiramisu.config.Config.__str__ tiramisu.config.Config-class.html#__str__
+tiramisu.config.Config.cfgimpl_set_owner       tiramisu.config.Config-class.html#cfgimpl_set_owner
+tiramisu.config.Config.getkey  tiramisu.config.Config-class.html#getkey
+tiramisu.config.Config._cfgimpl_mandatory      tiramisu.config.Config-class.html#_cfgimpl_mandatory
+tiramisu.config.Config.unwrap_from_path        tiramisu.config.Config-class.html#unwrap_from_path
+tiramisu.config.Config.__init__        tiramisu.config.Config-class.html#__init__
+tiramisu.config.Config._validate_duplicates    tiramisu.config.Config-class.html#_validate_duplicates
+tiramisu.config.Config._cfgimpl_owner  tiramisu.config.Config-class.html#_cfgimpl_owner
+tiramisu.config.Config.__getattr__     tiramisu.config.Config-class.html#__getattr__
+tiramisu.config.Config._cfgimpl_hidden tiramisu.config.Config-class.html#_cfgimpl_hidden
+tiramisu.config.Config.iter_groups     tiramisu.config.Config-class.html#iter_groups
+tiramisu.config.Config.get_warnings    tiramisu.config.Config-class.html#get_warnings
+tiramisu.config.Config.cfgimpl_update  tiramisu.config.Config-class.html#cfgimpl_update
+tiramisu.config.Config.override        tiramisu.config.Config-class.html#override
+tiramisu.config.Config.setoption       tiramisu.config.Config-class.html#setoption
+tiramisu.config.Config.__ne__  tiramisu.config.Config-class.html#__ne__
+tiramisu.config.Config.cfgimpl_disable tiramisu.config.Config-class.html#cfgimpl_disable
+tiramisu.config.Config.__hash__        tiramisu.config.Config-class.html#__hash__
+tiramisu.config.Config.get     tiramisu.config.Config-class.html#get
+tiramisu.config.Config._cfgimpl_get_toplevel   tiramisu.config.Config-class.html#_cfgimpl_get_toplevel
+tiramisu.config.Config._cfgimpl_build  tiramisu.config.Config-class.html#_cfgimpl_build
+tiramisu.config.Config.__setattr__     tiramisu.config.Config-class.html#__setattr__
+tiramisu.config.Config.is_frozen       tiramisu.config.Config-class.html#is_frozen
+tiramisu.config.Config.__iter__        tiramisu.config.Config-class.html#__iter__
+tiramisu.config.Config._cfgimpl_toplevel       tiramisu.config.Config-class.html#_cfgimpl_toplevel
+tiramisu.config.Config._cfgimpl_get_home_by_path       tiramisu.config.Config-class.html#_cfgimpl_get_home_by_path
+tiramisu.config.Config._cfgimpl_mode   tiramisu.config.Config-class.html#_cfgimpl_mode
+tiramisu.config.Config.cfgimpl_read_write      tiramisu.config.Config-class.html#cfgimpl_read_write
+tiramisu.config.Config.__eq__  tiramisu.config.Config-class.html#__eq__
+tiramisu.config.Config.__dir__ tiramisu.config.Config-class.html#__dir__
+tiramisu.config.Config.getpaths        tiramisu.config.Config-class.html#getpaths
+tiramisu.config.Config.cfgimpl_set_mode        tiramisu.config.Config-class.html#cfgimpl_set_mode
+tiramisu.config.Config.cfgimpl_hide    tiramisu.config.Config-class.html#cfgimpl_hide
+tiramisu.config.Config.cfgimpl_show    tiramisu.config.Config-class.html#cfgimpl_show
+tiramisu.config.Config._cfgimpl_frozen tiramisu.config.Config-class.html#_cfgimpl_frozen
+tiramisu.config.Config._cfgimpl_disabled       tiramisu.config.Config-class.html#_cfgimpl_disabled
+tiramisu.config.Config.__delattr__     tiramisu.config.Config-class.html#__delattr__
+tiramisu.config.Config.add_warning     tiramisu.config.Config-class.html#add_warning
+tiramisu.config.Config.cfgimpl_enable  tiramisu.config.Config-class.html#cfgimpl_enable
+tiramisu.config.Config.cfgimpl_freeze  tiramisu.config.Config-class.html#cfgimpl_freeze
+tiramisu.config.Config.cfgimpl_read_only       tiramisu.config.Config-class.html#cfgimpl_read_only
+tiramisu.option.ArbitraryOption        tiramisu.option.ArbitraryOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.ArbitraryOption.__init__       tiramisu.option.ArbitraryOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.Option.setoption       tiramisu.option.Option-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.ArbitraryOption.validate       tiramisu.option.ArbitraryOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.ArbitraryOption.getdefault     tiramisu.option.ArbitraryOption-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.BoolOption     tiramisu.option.BoolOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.BoolOption.opt_type    tiramisu.option.BoolOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.BoolOption.__init__    tiramisu.option.BoolOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.Option.setoption       tiramisu.option.Option-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.BoolOption.validate    tiramisu.option.BoolOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.ChoiceOption   tiramisu.option.ChoiceOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.ChoiceOption.opt_type  tiramisu.option.ChoiceOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.ChoiceOption.__init__  tiramisu.option.ChoiceOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.ChoiceOption.setoption tiramisu.option.ChoiceOption-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.ChoiceOption.validate  tiramisu.option.ChoiceOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.DisabledBaseType       tiramisu.option.DisabledBaseType-class.html
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.FloatOption    tiramisu.option.FloatOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.FloatOption.opt_type   tiramisu.option.FloatOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.FloatOption.__init__   tiramisu.option.FloatOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.FloatOption.setoption  tiramisu.option.FloatOption-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.FloatOption.validate   tiramisu.option.FloatOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.HiddenBaseType tiramisu.option.HiddenBaseType-class.html
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.IPOption       tiramisu.option.IPOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.IPOption.opt_type      tiramisu.option.IPOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.IPOption.__init__      tiramisu.option.IPOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.IPOption.setoption     tiramisu.option.IPOption-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.IPOption.validate      tiramisu.option.IPOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.IntOption      tiramisu.option.IntOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.IntOption.opt_type     tiramisu.option.IntOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.IntOption.__init__     tiramisu.option.IntOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.IntOption.setoption    tiramisu.option.IntOption-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.IntOption.validate     tiramisu.option.IntOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.ModeBaseType   tiramisu.option.ModeBaseType-class.html
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.NetmaskOption  tiramisu.option.NetmaskOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.NetmaskOption.opt_type tiramisu.option.NetmaskOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.NetmaskOption.__init__ tiramisu.option.NetmaskOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.NetmaskOption.setoption        tiramisu.option.NetmaskOption-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.NetmaskOption.validate tiramisu.option.NetmaskOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.Option tiramisu.option.Option-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.Option.__init__        tiramisu.option.Option-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.Option.setoption       tiramisu.option.Option-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.Option.validate        tiramisu.option.Option-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.OptionDescription      tiramisu.option.OptionDescription-class.html
+tiramisu.option.OptionDescription.show tiramisu.option.OptionDescription-class.html#show
+tiramisu.option.OptionDescription.add_child    tiramisu.option.OptionDescription-class.html#add_child
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.OptionDescription.__init__     tiramisu.option.OptionDescription-class.html#__init__
+tiramisu.option.OptionDescription.hide tiramisu.option.OptionDescription-class.html#hide
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.OptionDescription.get_group_type       tiramisu.option.OptionDescription-class.html#get_group_type
+tiramisu.option.OptionDescription.update_child tiramisu.option.OptionDescription-class.html#update_child
+tiramisu.option.OptionDescription.set_group_type       tiramisu.option.OptionDescription-class.html#set_group_type
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.OptionDescription.group_type   tiramisu.option.OptionDescription-class.html#group_type
+tiramisu.option.OptionDescription.getpaths     tiramisu.option.OptionDescription-class.html#getpaths
+tiramisu.option.OptionDescription.enable       tiramisu.option.OptionDescription-class.html#enable
+tiramisu.option.OptionDescription.disable      tiramisu.option.OptionDescription-class.html#disable
+tiramisu.option.OptionDescription.getkey       tiramisu.option.OptionDescription-class.html#getkey
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.OptionDescription._build       tiramisu.option.OptionDescription-class.html#_build
+tiramisu.option.OptionDescription.getdoc       tiramisu.option.OptionDescription-class.html#getdoc
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.StrOption      tiramisu.option.StrOption-class.html
+tiramisu.option.HiddenBaseType.show    tiramisu.option.HiddenBaseType-class.html#show
+tiramisu.option.StrOption.opt_type     tiramisu.option.StrOption-class.html#opt_type
+tiramisu.option.Option.getkey  tiramisu.option.Option-class.html#getkey
+tiramisu.option.DisabledBaseType.disabled      tiramisu.option.DisabledBaseType-class.html#disabled
+tiramisu.option.Option.setowner        tiramisu.option.Option-class.html#setowner
+tiramisu.option.DisabledBaseType._is_disabled  tiramisu.option.DisabledBaseType-class.html#_is_disabled
+tiramisu.option.StrOption.__init__     tiramisu.option.StrOption-class.html#__init__
+tiramisu.option.Option.is_mandatory    tiramisu.option.Option-class.html#is_mandatory
+tiramisu.option.ModeBaseType.set_mode  tiramisu.option.ModeBaseType-class.html#set_mode
+tiramisu.option.HiddenBaseType._is_hidden      tiramisu.option.HiddenBaseType-class.html#_is_hidden
+tiramisu.option.HiddenBaseType.hidden  tiramisu.option.HiddenBaseType-class.html#hidden
+tiramisu.option.DisabledBaseType.enable        tiramisu.option.DisabledBaseType-class.html#enable
+tiramisu.option.StrOption.setoption    tiramisu.option.StrOption-class.html#setoption
+tiramisu.option.DisabledBaseType.disable       tiramisu.option.DisabledBaseType-class.html#disable
+tiramisu.option.Option.getcallback     tiramisu.option.Option-class.html#getcallback
+tiramisu.option.HiddenBaseType.hide    tiramisu.option.HiddenBaseType-class.html#hide
+tiramisu.option.StrOption.validate     tiramisu.option.StrOption-class.html#validate
+tiramisu.option.Option.freeze  tiramisu.option.Option-class.html#freeze
+tiramisu.option.ModeBaseType.get_mode  tiramisu.option.ModeBaseType-class.html#get_mode
+tiramisu.option.Option._frozen tiramisu.option.Option-class.html#_frozen
+tiramisu.option.Option.getdoc  tiramisu.option.Option-class.html#getdoc
+tiramisu.option.Option.is_multi        tiramisu.option.Option-class.html#is_multi
+tiramisu.option.Option.getdefault      tiramisu.option.Option-class.html#getdefault
+tiramisu.option.Option.unfreeze        tiramisu.option.Option-class.html#unfreeze
+tiramisu.option.ModeBaseType.mode      tiramisu.option.ModeBaseType-class.html#mode
+tiramisu.option.SymLinkOption  tiramisu.option.SymLinkOption-class.html
+tiramisu.option.SymLinkOption.setoption        tiramisu.option.SymLinkOption-class.html#setoption
+tiramisu.option.SymLinkOption.opt_type tiramisu.option.SymLinkOption-class.html#opt_type
+tiramisu.option.SymLinkOption.__init__ tiramisu.option.SymLinkOption-class.html#__init__
diff --git a/doc/build/pydoc/crarr.png b/doc/build/pydoc/crarr.png
new file mode 100644 (file)
index 0000000..26b43c5
Binary files /dev/null and b/doc/build/pydoc/crarr.png differ
diff --git a/doc/build/pydoc/epydoc.css b/doc/build/pydoc/epydoc.css
new file mode 100644 (file)
index 0000000..1c00695
--- /dev/null
@@ -0,0 +1,322 @@
+
+
+/* Epydoc CSS Stylesheet
+ *
+ * This stylesheet can be used to customize the appearance of epydoc's
+ * HTML output.
+ *
+ */
+
+/* Default Colors & Styles
+ *   - Set the default foreground & background color with 'body'; and 
+ *     link colors with 'a:link' and 'a:visited'.
+ *   - Use bold for decision list terms.
+ *   - The heading styles defined here are used for headings *within*
+ *     docstring descriptions.  All headings used by epydoc itself use
+ *     either class='epydoc' or class='toc' (CSS styles for both
+ *     defined below).
+ */
+body                        { background: #ffffff; color: #000000; }
+p                           { margin-top: 0.5em; margin-bottom: 0.5em; }
+a:link                      { color: #000000; }
+a:visited                   { color: #404040; }
+dt                          { font-weight: bold; }
+h1                          { font-size: +140%; font-style: italic;
+                              font-weight: bold; }
+h2                          { font-size: +125%; font-style: italic;
+                              font-weight: bold; }
+h3                          { font-size: +110%; font-style: italic;
+                              font-weight: normal; }
+code                        { font-size: 100%; }
+/* N.B.: class, not pseudoclass */
+a.link                      { font-family: monospace; }
+/* Page Header & Footer
+ *   - The standard page header consists of a navigation bar (with
+ *     pointers to standard pages such as 'home' and 'trees'); a
+ *     breadcrumbs list, which can be used to navigate to containing
+ *     classes or modules; options links, to show/hide private
+ *     variables and to show/hide frames; and a page title (using
+ *     <h1>).  The page title may be followed by a link to the
+ *     corresponding source code (using 'span.codelink').
+ *   - The footer consists of a navigation bar, a timestamp, and a
+ *     pointer to epydoc's homepage.
+ */ 
+h1.epydoc                   { margin: 0; font-size: +140%; font-weight: bold; }
+h2.epydoc                   { font-size: +130%; font-weight: bold; }
+h3.epydoc                   { font-size: +115%; font-weight: bold;
+                              margin-top: 0.2em; }
+td h3.epydoc                { font-size: +115%; font-weight: bold;
+                              margin-bottom: 0; }
+table.navbar                { background: #c0c0c0; color: #000000;
+                              border: 2px groove #d0d0d0; }
+table.navbar table          { color: #000000; }
+th.navbar-select            { background: #b0b0b0;
+                              color: #000000; } 
+table.navbar a              { text-decoration: none; }  
+table.navbar a:link         { color: #000000; }
+table.navbar a:visited      { color: #404040; }
+span.breadcrumbs            { font-size: 85%; font-weight: bold; }
+span.options                { font-size: 70%; }
+span.codelink               { font-size: 85%; }
+td.footer                   { font-size: 85%; }
+
+/* Table Headers
+ *   - Each summary table and details section begins with a 'header'
+ *     row.  This row contains a section title (marked by
+ *     'span.table-header') as well as a show/hide private link
+ *     (marked by 'span.options', defined above).
+ *   - Summary tables that contain user-defined groups mark those
+ *     groups using 'group header' rows.
+ */
+td.table-header             { background: #b0b0b0; color: #000000;
+                              border: 1px solid #808080; }
+td.table-header table       { color: #000000; }
+td.table-header table a:link      { color: #000000; }
+td.table-header table a:visited   { color: #404040; }
+span.table-header           { font-size: 120%; font-weight: bold; }
+th.group-header             { background: #e0e0e0; color: #000000;
+                              text-align: left; font-style: italic; 
+                              font-size: 115%; 
+                              border: 1px solid #808080; }
+
+/* Summary Tables (functions, variables, etc)
+ *   - Each object is described by a single row of the table with
+ *     two cells.  The left cell gives the object's type, and is
+ *     marked with 'code.summary-type'.  The right cell gives the
+ *     object's name and a summary description.
+ *   - CSS styles for the table's header and group headers are
+ *     defined above, under 'Table Headers'
+ */
+table.summary               { border-collapse: collapse;
+                              background: #f0f0f0; color: #000000;
+                              border: 1px solid #808080;
+                              margin-bottom: 0.5em; }
+td.summary                  { border: 1px solid #808080; }
+code.summary-type           { font-size: 85%; }
+table.summary a:link        { color: #000000; }
+table.summary a:visited     { color: #404040; }
+
+
+/* Details Tables (functions, variables, etc)
+ *   - Each object is described in its own div.
+ *   - A single-row summary table w/ table-header is used as
+ *     a header for each details section (CSS style for table-header
+ *     is defined above, under 'Table Headers').
+ */
+table.details               { border-collapse: collapse;
+                              background: #f0f0f0; color: #000000;
+                              border: 1px solid #808080;
+                              margin: .2em 0 0 0; }
+table.details table         { color: #000000; }
+table.details a:link        { color: #000000; }
+table.details a:visited     { color: #404040; }
+
+/* Fields */
+dl.fields                   { margin-left: 2em; margin-top: 1em;
+                              margin-bottom: 1em; }
+dl.fields dd ul             { margin-left: 0em; padding-left: 0em; }
+dl.fields dd ul li ul       { margin-left: 2em; padding-left: 0em; }
+div.fields                  { margin-left: 2em; }
+div.fields p                { margin-bottom: 0.5em; }
+
+/* Index tables (identifier index, term index, etc)
+ *   - link-index is used for indices containing lists of links
+ *     (namely, the identifier index & term index).
+ *   - index-where is used in link indices for the text indicating
+ *     the container/source for each link.
+ *   - metadata-index is used for indices containing metadata
+ *     extracted from fields (namely, the bug index & todo index).
+ */
+table.link-index            { border-collapse: collapse;
+                              background: #f0f0f0; color: #000000;
+                              border: 1px solid #808080; }
+td.link-index               { border-width: 0px; }
+table.link-index a:link     { color: #000000; }
+table.link-index a:visited  { color: #404040; }
+span.index-where            { font-size: 70%; }
+table.metadata-index        { border-collapse: collapse;
+                              background: #f0f0f0; color: #000000;
+                              border: 1px solid #808080; 
+                              margin: .2em 0 0 0; }
+td.metadata-index           { border-width: 1px; border-style: solid; }
+table.metadata-index a:link { color: #000000; }
+table.metadata-index a:visited  { color: #404040; }
+
+/* Function signatures
+ *   - sig* is used for the signature in the details section.
+ *   - .summary-sig* is used for the signature in the summary 
+ *     table, and when listing property accessor functions.
+ * */
+.sig-name                   { color: #606060; }
+.sig-arg                    { color: #808080; }
+.sig-default                { color: #202020; }
+.summary-sig                { font-family: monospace; }
+.summary-sig-name           { color: #606060; font-weight: bold; }
+table.summary a.summary-sig-name:link
+                            { color: #606060; font-weight: bold; }
+table.summary a.summary-sig-name:visited
+                            { color: #606060; font-weight: bold; }
+.summary-sig-arg            { color: #606060; }
+.summary-sig-default        { color: #181818; }
+
+/* Subclass list
+ */
+ul.subclass-list { display: inline; }
+ul.subclass-list li { display: inline; }
+
+/* To render variables, classes etc. like functions */
+table.summary .summary-name { color: #606060; font-weight: bold;
+                              font-family: monospace; }
+table.summary
+     a.summary-name:link    { color: #606060; font-weight: bold;
+                              font-family: monospace; }
+table.summary
+    a.summary-name:visited  { color: #606060; font-weight: bold;
+                              font-family: monospace; }
+
+/* Variable values
+ *   - In the 'variable details' sections, each varaible's value is
+ *     listed in a 'pre.variable' box.  The width of this box is
+ *     restricted to 80 chars; if the value's repr is longer than
+ *     this it will be wrapped, using a backslash marked with
+ *     class 'variable-linewrap'.  If the value's repr is longer
+ *     than 3 lines, the rest will be ellided; and an ellipsis
+ *     marker ('...' marked with 'variable-ellipsis') will be used.
+ *   - If the value is a string, its quote marks will be marked
+ *     with 'variable-quote'.
+ *   - If the variable is a regexp, it is syntax-highlighted using
+ *     the re* CSS classes.
+ */
+pre.variable                { padding: .5em; margin: 0;
+                              background: #e4e4e4; color: #000000;
+                              border: 1px solid #888888; }
+.variable-linewrap          { color: #404040; font-weight: bold; }
+.variable-ellipsis          { color: #404040; font-weight: bold; }
+.variable-quote             { color: #404040; font-weight: bold; }
+.variable-group             { color: #808080; font-weight: bold; }
+.variable-op                { color: #404040; font-weight: bold; }
+.variable-string            { color: #606060; }
+.variable-unknown           { color: #000000; font-weight: bold; }
+.re                         { color: #000000; }
+.re-char                    { color: #606060; }
+.re-op                      { color: #000000; }
+.re-group                   { color: #303030; }
+.re-ref                     { color: #404040; }
+
+/* Base tree
+ *   - Used by class pages to display the base class hierarchy.
+ */
+pre.base-tree               { font-size: 80%; margin: 0; }
+
+/* Frames-based table of contents headers
+ *   - Consists of two frames: one for selecting modules; and
+ *     the other listing the contents of the selected module.
+ *   - h1.toc is used for each frame's heading
+ *   - h2.toc is used for subheadings within each frame.
+ */
+h1.toc                      { text-align: center; font-size: 105%;
+                              margin: 0; font-weight: bold;
+                              padding: 0; }
+h2.toc                      { font-size: 100%; font-weight: bold; 
+                              margin: 0.5em 0 0 -0.3em; }
+
+/* Syntax Highlighting for Source Code
+ *   - doctest examples are displayed in a 'pre.py-doctest' block.
+ *     If the example is in a details table entry, then it will use
+ *     the colors specified by the 'table pre.py-doctest' line.
+ *   - Source code listings are displayed in a 'pre.py-src' block.
+ *     Each line is marked with 'span.py-line' (used to draw a line
+ *     down the left margin, separating the code from the line
+ *     numbers).  Line numbers are displayed with 'span.py-lineno'.
+ *     The expand/collapse block toggle button is displayed with
+ *     'a.py-toggle' (Note: the CSS style for 'a.py-toggle' should not
+ *     modify the font size of the text.)
+ *   - If a source code page is opened with an anchor, then the
+ *     corresponding code block will be highlighted.  The code
+ *     block's header is highlighted with 'py-highlight-hdr'; and
+ *     the code block's body is highlighted with 'py-highlight'.
+ *   - The remaining py-* classes are used to perform syntax
+ *     highlighting (py-string for string literals, py-name for names,
+ *     etc.)
+ */
+pre.py-doctest              { padding: .5em; margin: 1em;
+                              background: #f0f0f0; color: #000000;
+                              border: 1px solid #888888; }
+table pre.py-doctest        { background: #e4e4e4;
+                              color: #000000; }
+pre.py-src                  { border: 2px solid #000000; 
+                              background: #f0f0f0; color: #000000; }
+.py-line                    { border-left: 2px solid #000000; 
+                              margin-left: .2em; padding-left: .4em; }
+.py-lineno                  { font-style: italic; font-size: 90%;
+                              padding-left: .5em; }
+a.py-toggle                 { text-decoration: none; }
+div.py-highlight-hdr        { border-top: 2px solid #000000;
+                              border-bottom: 2px solid #000000;
+                              background: #e8e8e8; }
+div.py-highlight            { border-bottom: 2px solid #000000;
+                              background: #e0e0e0; }
+.py-prompt                  { color: #505050; font-weight: bold;}
+.py-more                    { color: #505050; font-weight: bold;}
+.py-string                  { color: #606060; }
+.py-comment                 { color: #303030; }
+.py-keyword                 { color: #000000; }
+.py-output                  { color: #404040; }
+.py-name                    { color: #000000; }
+.py-name:link               { color: #000000 !important; }
+.py-name:visited            { color: #000000 !important; }
+.py-number                  { color: #505050; }
+.py-defname                 { color: #000000; font-weight: bold; }
+.py-def-name                { color: #000000; font-weight: bold; }
+.py-base-class              { color: #000000; }
+.py-param                   { color: #000000; }
+.py-docstring               { color: #606060; }
+.py-decorator               { color: #404040; }
+/* Use this if you don't want links to names underlined: */
+/*a.py-name                   { text-decoration: none; }*/
+
+/* Graphs & Diagrams
+ *   - These CSS styles are used for graphs & diagrams generated using
+ *     Graphviz dot.  'img.graph-without-title' is used for bare
+ *     diagrams (to remove the border created by making the image
+ *     clickable).
+ */
+img.graph-without-title     { border: none; }
+img.graph-with-title        { border: 1px solid #000000; }
+span.graph-title            { font-weight: bold; }
+span.graph-caption          { }
+
+/* General-purpose classes
+ *   - 'p.indent-wrapped-lines' defines a paragraph whose first line
+ *     is not indented, but whose subsequent lines are.
+ *   - The 'nomargin-top' class is used to remove the top margin (e.g.
+ *     from lists).  The 'nomargin' class is used to remove both the
+ *     top and bottom margin (but not the left or right margin --
+ *     for lists, that would cause the bullets to disappear.)
+ */
+p.indent-wrapped-lines      { padding: 0 0 0 7em; text-indent: -7em; 
+                              margin: 0; }
+.nomargin-top               { margin-top: 0; }
+.nomargin                   { margin-top: 0; margin-bottom: 0; }
+
+/* HTML Log */
+div.log-block               { padding: 0; margin: .5em 0 .5em 0;
+                              background: #f0f0f0; color: #000000;
+                              border: 1px solid #000000; }
+div.log-error               { padding: .1em .3em .1em .3em; margin: 4px;
+                              background: #b0b0b0; color: #000000;
+                              border: 1px solid #000000; }
+div.log-warning             { padding: .1em .3em .1em .3em; margin: 4px;
+                              background: #ffffff; color: #000000;
+                              border: 1px solid #000000; }
+div.log-info               { padding: .1em .3em .1em .3em; margin: 4px;
+                              background: #ffffff; color: #000000;
+                              border: 1px solid #000000; }
+h2.log-hdr                  { background: #b0b0b0; color: #000000;
+                              margin: 0; padding: 0em 0.5em 0em 0.5em;
+                              border-bottom: 1px solid #000000; font-size: 110%; }
+p.log                       { font-weight: bold; margin: .5em 0 .5em 0; }
+tr.opt-changed              { color: #000000; font-weight: bold; }
+tr.opt-default              { color: #606060; }
+pre.log                     { margin: 0; padding: 0; padding-left: 1em; }
diff --git a/doc/build/pydoc/epydoc.js b/doc/build/pydoc/epydoc.js
new file mode 100644 (file)
index 0000000..e787dbc
--- /dev/null
@@ -0,0 +1,293 @@
+function toggle_private() {
+        // Search for any private/public links on this page.  Store
+        // their old text in "cmd," so we will know what action to
+        // take; and change their text to the opposite action.
+        var cmd = "?";
+        var elts = document.getElementsByTagName("a");
+        for(var i=0; i<elts.length; i++) {
+          if (elts[i].className == "privatelink") {
+            cmd = elts[i].innerHTML;
+            elts[i].innerHTML = ((cmd && cmd.substr(0,4)=="show")?
+                                    "hide&nbsp;private":"show&nbsp;private");
+          }
+        }
+        // Update all DIVs containing private objects.
+        var elts = document.getElementsByTagName("div");
+        for(var i=0; i<elts.length; i++) {
+          if (elts[i].className == "private") {
+            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
+          }
+          else if (elts[i].className == "public") {
+            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"block":"none");
+          }
+        }
+        // Update all table rows containing private objects.  Note, we
+        // use "" instead of "block" becaue IE & firefox disagree on what
+        // this should be (block vs table-row), and "" just gives the
+        // default for both browsers.
+        var elts = document.getElementsByTagName("tr");
+        for(var i=0; i<elts.length; i++) {
+          if (elts[i].className == "private") {
+            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"");
+          }
+        }
+        // Update all list items containing private objects.
+        var elts = document.getElementsByTagName("li");
+        for(var i=0; i<elts.length; i++) {
+          if (elts[i].className == "private") {
+            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?
+                                        "none":"");
+          }
+        }
+        // Update all list items containing private objects.
+        var elts = document.getElementsByTagName("ul");
+        for(var i=0; i<elts.length; i++) {
+          if (elts[i].className == "private") {
+            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
+          }
+        }
+        // Set a cookie to remember the current option.
+        document.cookie = "EpydocPrivate="+cmd;
+      }
+function show_private() {
+        var elts = document.getElementsByTagName("a");
+        for(var i=0; i<elts.length; i++) {
+          if (elts[i].className == "privatelink") {
+            cmd = elts[i].innerHTML;
+            if (cmd && cmd.substr(0,4)=="show")
+                toggle_private();
+          }
+        }
+      }
+function getCookie(name) {
+        var dc = document.cookie;
+        var prefix = name + "=";
+        var begin = dc.indexOf("; " + prefix);
+        if (begin == -1) {
+          begin = dc.indexOf(prefix);
+          if (begin != 0) return null;
+        } else
+        { begin += 2; }
+        var end = document.cookie.indexOf(";", begin);
+        if (end == -1)
+        { end = dc.length; }
+        return unescape(dc.substring(begin + prefix.length, end));
+      }
+function setFrame(url1, url2) {
+          parent.frames[1].location.href = url1;
+          parent.frames[2].location.href = url2;
+      }
+function checkCookie() {
+        var cmd=getCookie("EpydocPrivate");
+        if (cmd && cmd.substr(0,4)!="show" && location.href.indexOf("#_") < 0)
+            toggle_private();
+      }
+function toggleCallGraph(id) {
+        var elt = document.getElementById(id);
+        if (elt.style.display == "none")
+            elt.style.display = "block";
+        else
+            elt.style.display = "none";
+      }
+function expand(id) {
+  var elt = document.getElementById(id+"-expanded");
+  if (elt) elt.style.display = "block";
+  var elt = document.getElementById(id+"-expanded-linenums");
+  if (elt) elt.style.display = "block";
+  var elt = document.getElementById(id+"-collapsed");
+  if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
+  var elt = document.getElementById(id+"-collapsed-linenums");
+  if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
+  var elt = document.getElementById(id+"-toggle");
+  if (elt) { elt.innerHTML = "-"; }
+}
+
+function collapse(id) {
+  var elt = document.getElementById(id+"-expanded");
+  if (elt) elt.style.display = "none";
+  var elt = document.getElementById(id+"-expanded-linenums");
+  if (elt) elt.style.display = "none";
+  var elt = document.getElementById(id+"-collapsed-linenums");
+  if (elt) { elt.innerHTML = "<br />"; elt.style.display="block"; }
+  var elt = document.getElementById(id+"-toggle");
+  if (elt) { elt.innerHTML = "+"; }
+  var elt = document.getElementById(id+"-collapsed");
+  if (elt) {
+    elt.style.display = "block";
+    
+    var indent = elt.getAttribute("indent");
+    var pad = elt.getAttribute("pad");
+    var s = "<tt class='py-lineno'>";
+    for (var i=0; i<pad.length; i++) { s += "&nbsp;" }
+    s += "</tt>";
+    s += "&nbsp;&nbsp;<tt class='py-line'>";
+    for (var i=0; i<indent.length; i++) { s += "&nbsp;" }
+    s += "<a href='#' onclick='expand(\"" + id;
+    s += "\");return false'>...</a></tt><br />";
+    elt.innerHTML = s;
+  }
+}
+
+function toggle(id) {
+  elt = document.getElementById(id+"-toggle");
+  if (elt.innerHTML == "-")
+      collapse(id); 
+  else
+      expand(id);
+  return false;
+}
+
+function highlight(id) {
+  var elt = document.getElementById(id+"-def");
+  if (elt) elt.className = "py-highlight-hdr";
+  var elt = document.getElementById(id+"-expanded");
+  if (elt) elt.className = "py-highlight";
+  var elt = document.getElementById(id+"-collapsed");
+  if (elt) elt.className = "py-highlight";
+}
+
+function num_lines(s) {
+  var n = 1;
+  var pos = s.indexOf("\n");
+  while ( pos > 0) {
+    n += 1;
+    pos = s.indexOf("\n", pos+1);
+  }
+  return n;
+}
+
+// Collapse all blocks that mave more than `min_lines` lines.
+function collapse_all(min_lines) {
+  var elts = document.getElementsByTagName("div");
+  for (var i=0; i<elts.length; i++) {
+    var elt = elts[i];
+    var split = elt.id.indexOf("-");
+    if (split > 0)
+      if (elt.id.substring(split, elt.id.length) == "-expanded")
+        if (num_lines(elt.innerHTML) > min_lines)
+          collapse(elt.id.substring(0, split));
+  }
+}
+
+function expandto(href) {
+  var start = href.indexOf("#")+1;
+  if (start != 0 && start != href.length) {
+    if (href.substring(start, href.length) != "-") {
+      collapse_all(4);
+      pos = href.indexOf(".", start);
+      while (pos != -1) {
+        var id = href.substring(start, pos);
+        expand(id);
+        pos = href.indexOf(".", pos+1);
+      }
+      var id = href.substring(start, href.length);
+      expand(id);
+      highlight(id);
+    }
+  }
+}
+
+function kill_doclink(id) {
+  var parent = document.getElementById(id);
+  parent.removeChild(parent.childNodes.item(0));
+}
+function auto_kill_doclink(ev) {
+  if (!ev) var ev = window.event;
+  if (!this.contains(ev.toElement)) {
+    var parent = document.getElementById(this.parentID);
+    parent.removeChild(parent.childNodes.item(0));
+  }
+}
+
+function doclink(id, name, targets_id) {
+  var elt = document.getElementById(id);
+
+  // If we already opened the box, then destroy it.
+  // (This case should never occur, but leave it in just in case.)
+  if (elt.childNodes.length > 1) {
+    elt.removeChild(elt.childNodes.item(0));
+  }
+  else {
+    // The outer box: relative + inline positioning.
+    var box1 = document.createElement("div");
+    box1.style.position = "relative";
+    box1.style.display = "inline";
+    box1.style.top = 0;
+    box1.style.left = 0;
+  
+    // A shadow for fun
+    var shadow = document.createElement("div");
+    shadow.style.position = "absolute";
+    shadow.style.left = "-1.3em";
+    shadow.style.top = "-1.3em";
+    shadow.style.background = "#404040";
+    
+    // The inner box: absolute positioning.
+    var box2 = document.createElement("div");
+    box2.style.position = "relative";
+    box2.style.border = "1px solid #a0a0a0";
+    box2.style.left = "-.2em";
+    box2.style.top = "-.2em";
+    box2.style.background = "white";
+    box2.style.padding = ".3em .4em .3em .4em";
+    box2.style.fontStyle = "normal";
+    box2.onmouseout=auto_kill_doclink;
+    box2.parentID = id;
+
+    // Get the targets
+    var targets_elt = document.getElementById(targets_id);
+    var targets = targets_elt.getAttribute("targets");
+    var links = "";
+    target_list = targets.split(",");
+    for (var i=0; i<target_list.length; i++) {
+        var target = target_list[i].split("=");
+        links += "<li><a href='" + target[1] + 
+               "' style='text-decoration:none'>" +
+               target[0] + "</a></li>";
+    }
+  
+    // Put it all together.
+    elt.insertBefore(box1, elt.childNodes.item(0));
+    //box1.appendChild(box2);
+    box1.appendChild(shadow);
+    shadow.appendChild(box2);
+    box2.innerHTML =
+        "Which <b>"+name+"</b> do you want to see documentation for?" +
+        "<ul style='margin-bottom: 0;'>" +
+        links + 
+        "<li><a href='#' style='text-decoration:none' " +
+        "onclick='kill_doclink(\""+id+"\");return false;'>"+
+        "<i>None of the above</i></a></li></ul>";
+  }
+  return false;
+}
+
+function get_anchor() {
+          var href = location.href;
+          var start = href.indexOf("#")+1;
+          if ((start != 0) && (start != href.length))
+              return href.substring(start, href.length);
+      }
+function redirect_url(dottedName) {
+          // Scan through each element of the "pages" list, and check
+          // if "name" matches with any of them.
+          for (var i=0; i<pages.length; i++) {
+
+              // Each page has the form "<pagename>-m" or "<pagename>-c";
+              // extract the <pagename> portion & compare it to dottedName.
+              var pagename = pages[i].substring(0, pages[i].length-2);
+              if (pagename == dottedName.substring(0,pagename.length)) {
+
+                  // We've found a page that matches `dottedName`;
+                  // construct its URL, using leftover `dottedName`
+                  // content to form an anchor.
+                  var pagetype = pages[i].charAt(pages[i].length-1);
+                  var url = pagename + ((pagetype=="m")?"-module.html":
+                                                        "-class.html");
+                  if (dottedName.length > pagename.length)
+                      url += "#" + dottedName.substring(pagename.length+1,
+                                                        dottedName.length);
+                  return url;
+              }
+          }
+      }
index a5bcf22..cf3eb88 100755 (executable)
@@ -1,3 +1,3 @@
-epydoc --css grayscale -o ./pydoc ../config.py ../option.py
+epydoc --css grayscale -o ./build/pydoc ../config.py ../option.py
 #apirst2html.py --stylesheet=docutils.css --external-api=epydoc --external-api-root=epydoc:./api/ --external-api-file=epydoc:./api/api-objects.txt  doc.txt > doc.htm
 
index a6e812a..dab64cb 100644 (file)
@@ -30,7 +30,10 @@ configuration handler.
 - :doc:`configapi` and :doc:`optionapi` describe the API's details,
 - :doc:`status` for a summary of the `Option`'s and `Config`'s statuses,
 - :doc:`consistency` for the local and global integrity constraints,
+
+
 - :doc:`glossary` describes the specific terms used in Tiramisu.
+- :doc:`pydoc/index` for the developer's API
 
 
 
diff --git a/doc/pydoc/Makefile b/doc/pydoc/Makefile
deleted file mode 100644 (file)
index 612cb8f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-.PHONY: clean
-.SUFFIXES:
-
-clean:
-       rm -f *.html
diff --git a/doc/pydoc/crarr.png b/doc/pydoc/crarr.png
deleted file mode 100644 (file)
index 26b43c5..0000000
Binary files a/doc/pydoc/crarr.png and /dev/null differ
diff --git a/doc/pydoc/epydoc.css b/doc/pydoc/epydoc.css
deleted file mode 100644 (file)
index 1c00695..0000000
+++ /dev/null
@@ -1,322 +0,0 @@
-
-
-/* Epydoc CSS Stylesheet
- *
- * This stylesheet can be used to customize the appearance of epydoc's
- * HTML output.
- *
- */
-
-/* Default Colors & Styles
- *   - Set the default foreground & background color with 'body'; and 
- *     link colors with 'a:link' and 'a:visited'.
- *   - Use bold for decision list terms.
- *   - The heading styles defined here are used for headings *within*
- *     docstring descriptions.  All headings used by epydoc itself use
- *     either class='epydoc' or class='toc' (CSS styles for both
- *     defined below).
- */
-body                        { background: #ffffff; color: #000000; }
-p                           { margin-top: 0.5em; margin-bottom: 0.5em; }
-a:link                      { color: #000000; }
-a:visited                   { color: #404040; }
-dt                          { font-weight: bold; }
-h1                          { font-size: +140%; font-style: italic;
-                              font-weight: bold; }
-h2                          { font-size: +125%; font-style: italic;
-                              font-weight: bold; }
-h3                          { font-size: +110%; font-style: italic;
-                              font-weight: normal; }
-code                        { font-size: 100%; }
-/* N.B.: class, not pseudoclass */
-a.link                      { font-family: monospace; }
-/* Page Header & Footer
- *   - The standard page header consists of a navigation bar (with
- *     pointers to standard pages such as 'home' and 'trees'); a
- *     breadcrumbs list, which can be used to navigate to containing
- *     classes or modules; options links, to show/hide private
- *     variables and to show/hide frames; and a page title (using
- *     <h1>).  The page title may be followed by a link to the
- *     corresponding source code (using 'span.codelink').
- *   - The footer consists of a navigation bar, a timestamp, and a
- *     pointer to epydoc's homepage.
- */ 
-h1.epydoc                   { margin: 0; font-size: +140%; font-weight: bold; }
-h2.epydoc                   { font-size: +130%; font-weight: bold; }
-h3.epydoc                   { font-size: +115%; font-weight: bold;
-                              margin-top: 0.2em; }
-td h3.epydoc                { font-size: +115%; font-weight: bold;
-                              margin-bottom: 0; }
-table.navbar                { background: #c0c0c0; color: #000000;
-                              border: 2px groove #d0d0d0; }
-table.navbar table          { color: #000000; }
-th.navbar-select            { background: #b0b0b0;
-                              color: #000000; } 
-table.navbar a              { text-decoration: none; }  
-table.navbar a:link         { color: #000000; }
-table.navbar a:visited      { color: #404040; }
-span.breadcrumbs            { font-size: 85%; font-weight: bold; }
-span.options                { font-size: 70%; }
-span.codelink               { font-size: 85%; }
-td.footer                   { font-size: 85%; }
-
-/* Table Headers
- *   - Each summary table and details section begins with a 'header'
- *     row.  This row contains a section title (marked by
- *     'span.table-header') as well as a show/hide private link
- *     (marked by 'span.options', defined above).
- *   - Summary tables that contain user-defined groups mark those
- *     groups using 'group header' rows.
- */
-td.table-header             { background: #b0b0b0; color: #000000;
-                              border: 1px solid #808080; }
-td.table-header table       { color: #000000; }
-td.table-header table a:link      { color: #000000; }
-td.table-header table a:visited   { color: #404040; }
-span.table-header           { font-size: 120%; font-weight: bold; }
-th.group-header             { background: #e0e0e0; color: #000000;
-                              text-align: left; font-style: italic; 
-                              font-size: 115%; 
-                              border: 1px solid #808080; }
-
-/* Summary Tables (functions, variables, etc)
- *   - Each object is described by a single row of the table with
- *     two cells.  The left cell gives the object's type, and is
- *     marked with 'code.summary-type'.  The right cell gives the
- *     object's name and a summary description.
- *   - CSS styles for the table's header and group headers are
- *     defined above, under 'Table Headers'
- */
-table.summary               { border-collapse: collapse;
-                              background: #f0f0f0; color: #000000;
-                              border: 1px solid #808080;
-                              margin-bottom: 0.5em; }
-td.summary                  { border: 1px solid #808080; }
-code.summary-type           { font-size: 85%; }
-table.summary a:link        { color: #000000; }
-table.summary a:visited     { color: #404040; }
-
-
-/* Details Tables (functions, variables, etc)
- *   - Each object is described in its own div.
- *   - A single-row summary table w/ table-header is used as
- *     a header for each details section (CSS style for table-header
- *     is defined above, under 'Table Headers').
- */
-table.details               { border-collapse: collapse;
-                              background: #f0f0f0; color: #000000;
-                              border: 1px solid #808080;
-                              margin: .2em 0 0 0; }
-table.details table         { color: #000000; }
-table.details a:link        { color: #000000; }
-table.details a:visited     { color: #404040; }
-
-/* Fields */
-dl.fields                   { margin-left: 2em; margin-top: 1em;
-                              margin-bottom: 1em; }
-dl.fields dd ul             { margin-left: 0em; padding-left: 0em; }
-dl.fields dd ul li ul       { margin-left: 2em; padding-left: 0em; }
-div.fields                  { margin-left: 2em; }
-div.fields p                { margin-bottom: 0.5em; }
-
-/* Index tables (identifier index, term index, etc)
- *   - link-index is used for indices containing lists of links
- *     (namely, the identifier index & term index).
- *   - index-where is used in link indices for the text indicating
- *     the container/source for each link.
- *   - metadata-index is used for indices containing metadata
- *     extracted from fields (namely, the bug index & todo index).
- */
-table.link-index            { border-collapse: collapse;
-                              background: #f0f0f0; color: #000000;
-                              border: 1px solid #808080; }
-td.link-index               { border-width: 0px; }
-table.link-index a:link     { color: #000000; }
-table.link-index a:visited  { color: #404040; }
-span.index-where            { font-size: 70%; }
-table.metadata-index        { border-collapse: collapse;
-                              background: #f0f0f0; color: #000000;
-                              border: 1px solid #808080; 
-                              margin: .2em 0 0 0; }
-td.metadata-index           { border-width: 1px; border-style: solid; }
-table.metadata-index a:link { color: #000000; }
-table.metadata-index a:visited  { color: #404040; }
-
-/* Function signatures
- *   - sig* is used for the signature in the details section.
- *   - .summary-sig* is used for the signature in the summary 
- *     table, and when listing property accessor functions.
- * */
-.sig-name                   { color: #606060; }
-.sig-arg                    { color: #808080; }
-.sig-default                { color: #202020; }
-.summary-sig                { font-family: monospace; }
-.summary-sig-name           { color: #606060; font-weight: bold; }
-table.summary a.summary-sig-name:link
-                            { color: #606060; font-weight: bold; }
-table.summary a.summary-sig-name:visited
-                            { color: #606060; font-weight: bold; }
-.summary-sig-arg            { color: #606060; }
-.summary-sig-default        { color: #181818; }
-
-/* Subclass list
- */
-ul.subclass-list { display: inline; }
-ul.subclass-list li { display: inline; }
-
-/* To render variables, classes etc. like functions */
-table.summary .summary-name { color: #606060; font-weight: bold;
-                              font-family: monospace; }
-table.summary
-     a.summary-name:link    { color: #606060; font-weight: bold;
-                              font-family: monospace; }
-table.summary
-    a.summary-name:visited  { color: #606060; font-weight: bold;
-                              font-family: monospace; }
-
-/* Variable values
- *   - In the 'variable details' sections, each varaible's value is
- *     listed in a 'pre.variable' box.  The width of this box is
- *     restricted to 80 chars; if the value's repr is longer than
- *     this it will be wrapped, using a backslash marked with
- *     class 'variable-linewrap'.  If the value's repr is longer
- *     than 3 lines, the rest will be ellided; and an ellipsis
- *     marker ('...' marked with 'variable-ellipsis') will be used.
- *   - If the value is a string, its quote marks will be marked
- *     with 'variable-quote'.
- *   - If the variable is a regexp, it is syntax-highlighted using
- *     the re* CSS classes.
- */
-pre.variable                { padding: .5em; margin: 0;
-                              background: #e4e4e4; color: #000000;
-                              border: 1px solid #888888; }
-.variable-linewrap          { color: #404040; font-weight: bold; }
-.variable-ellipsis          { color: #404040; font-weight: bold; }
-.variable-quote             { color: #404040; font-weight: bold; }
-.variable-group             { color: #808080; font-weight: bold; }
-.variable-op                { color: #404040; font-weight: bold; }
-.variable-string            { color: #606060; }
-.variable-unknown           { color: #000000; font-weight: bold; }
-.re                         { color: #000000; }
-.re-char                    { color: #606060; }
-.re-op                      { color: #000000; }
-.re-group                   { color: #303030; }
-.re-ref                     { color: #404040; }
-
-/* Base tree
- *   - Used by class pages to display the base class hierarchy.
- */
-pre.base-tree               { font-size: 80%; margin: 0; }
-
-/* Frames-based table of contents headers
- *   - Consists of two frames: one for selecting modules; and
- *     the other listing the contents of the selected module.
- *   - h1.toc is used for each frame's heading
- *   - h2.toc is used for subheadings within each frame.
- */
-h1.toc                      { text-align: center; font-size: 105%;
-                              margin: 0; font-weight: bold;
-                              padding: 0; }
-h2.toc                      { font-size: 100%; font-weight: bold; 
-                              margin: 0.5em 0 0 -0.3em; }
-
-/* Syntax Highlighting for Source Code
- *   - doctest examples are displayed in a 'pre.py-doctest' block.
- *     If the example is in a details table entry, then it will use
- *     the colors specified by the 'table pre.py-doctest' line.
- *   - Source code listings are displayed in a 'pre.py-src' block.
- *     Each line is marked with 'span.py-line' (used to draw a line
- *     down the left margin, separating the code from the line
- *     numbers).  Line numbers are displayed with 'span.py-lineno'.
- *     The expand/collapse block toggle button is displayed with
- *     'a.py-toggle' (Note: the CSS style for 'a.py-toggle' should not
- *     modify the font size of the text.)
- *   - If a source code page is opened with an anchor, then the
- *     corresponding code block will be highlighted.  The code
- *     block's header is highlighted with 'py-highlight-hdr'; and
- *     the code block's body is highlighted with 'py-highlight'.
- *   - The remaining py-* classes are used to perform syntax
- *     highlighting (py-string for string literals, py-name for names,
- *     etc.)
- */
-pre.py-doctest              { padding: .5em; margin: 1em;
-                              background: #f0f0f0; color: #000000;
-                              border: 1px solid #888888; }
-table pre.py-doctest        { background: #e4e4e4;
-                              color: #000000; }
-pre.py-src                  { border: 2px solid #000000; 
-                              background: #f0f0f0; color: #000000; }
-.py-line                    { border-left: 2px solid #000000; 
-                              margin-left: .2em; padding-left: .4em; }
-.py-lineno                  { font-style: italic; font-size: 90%;
-                              padding-left: .5em; }
-a.py-toggle                 { text-decoration: none; }
-div.py-highlight-hdr        { border-top: 2px solid #000000;
-                              border-bottom: 2px solid #000000;
-                              background: #e8e8e8; }
-div.py-highlight            { border-bottom: 2px solid #000000;
-                              background: #e0e0e0; }
-.py-prompt                  { color: #505050; font-weight: bold;}
-.py-more                    { color: #505050; font-weight: bold;}
-.py-string                  { color: #606060; }
-.py-comment                 { color: #303030; }
-.py-keyword                 { color: #000000; }
-.py-output                  { color: #404040; }
-.py-name                    { color: #000000; }
-.py-name:link               { color: #000000 !important; }
-.py-name:visited            { color: #000000 !important; }
-.py-number                  { color: #505050; }
-.py-defname                 { color: #000000; font-weight: bold; }
-.py-def-name                { color: #000000; font-weight: bold; }
-.py-base-class              { color: #000000; }
-.py-param                   { color: #000000; }
-.py-docstring               { color: #606060; }
-.py-decorator               { color: #404040; }
-/* Use this if you don't want links to names underlined: */
-/*a.py-name                   { text-decoration: none; }*/
-
-/* Graphs & Diagrams
- *   - These CSS styles are used for graphs & diagrams generated using
- *     Graphviz dot.  'img.graph-without-title' is used for bare
- *     diagrams (to remove the border created by making the image
- *     clickable).
- */
-img.graph-without-title     { border: none; }
-img.graph-with-title        { border: 1px solid #000000; }
-span.graph-title            { font-weight: bold; }
-span.graph-caption          { }
-
-/* General-purpose classes
- *   - 'p.indent-wrapped-lines' defines a paragraph whose first line
- *     is not indented, but whose subsequent lines are.
- *   - The 'nomargin-top' class is used to remove the top margin (e.g.
- *     from lists).  The 'nomargin' class is used to remove both the
- *     top and bottom margin (but not the left or right margin --
- *     for lists, that would cause the bullets to disappear.)
- */
-p.indent-wrapped-lines      { padding: 0 0 0 7em; text-indent: -7em; 
-                              margin: 0; }
-.nomargin-top               { margin-top: 0; }
-.nomargin                   { margin-top: 0; margin-bottom: 0; }
-
-/* HTML Log */
-div.log-block               { padding: 0; margin: .5em 0 .5em 0;
-                              background: #f0f0f0; color: #000000;
-                              border: 1px solid #000000; }
-div.log-error               { padding: .1em .3em .1em .3em; margin: 4px;
-                              background: #b0b0b0; color: #000000;
-                              border: 1px solid #000000; }
-div.log-warning             { padding: .1em .3em .1em .3em; margin: 4px;
-                              background: #ffffff; color: #000000;
-                              border: 1px solid #000000; }
-div.log-info               { padding: .1em .3em .1em .3em; margin: 4px;
-                              background: #ffffff; color: #000000;
-                              border: 1px solid #000000; }
-h2.log-hdr                  { background: #b0b0b0; color: #000000;
-                              margin: 0; padding: 0em 0.5em 0em 0.5em;
-                              border-bottom: 1px solid #000000; font-size: 110%; }
-p.log                       { font-weight: bold; margin: .5em 0 .5em 0; }
-tr.opt-changed              { color: #000000; font-weight: bold; }
-tr.opt-default              { color: #606060; }
-pre.log                     { margin: 0; padding: 0; padding-left: 1em; }
diff --git a/doc/pydoc/epydoc.js b/doc/pydoc/epydoc.js
deleted file mode 100644 (file)
index e787dbc..0000000
+++ /dev/null
@@ -1,293 +0,0 @@
-function toggle_private() {
-        // Search for any private/public links on this page.  Store
-        // their old text in "cmd," so we will know what action to
-        // take; and change their text to the opposite action.
-        var cmd = "?";
-        var elts = document.getElementsByTagName("a");
-        for(var i=0; i<elts.length; i++) {
-          if (elts[i].className == "privatelink") {
-            cmd = elts[i].innerHTML;
-            elts[i].innerHTML = ((cmd && cmd.substr(0,4)=="show")?
-                                    "hide&nbsp;private":"show&nbsp;private");
-          }
-        }
-        // Update all DIVs containing private objects.
-        var elts = document.getElementsByTagName("div");
-        for(var i=0; i<elts.length; i++) {
-          if (elts[i].className == "private") {
-            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
-          }
-          else if (elts[i].className == "public") {
-            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"block":"none");
-          }
-        }
-        // Update all table rows containing private objects.  Note, we
-        // use "" instead of "block" becaue IE & firefox disagree on what
-        // this should be (block vs table-row), and "" just gives the
-        // default for both browsers.
-        var elts = document.getElementsByTagName("tr");
-        for(var i=0; i<elts.length; i++) {
-          if (elts[i].className == "private") {
-            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"");
-          }
-        }
-        // Update all list items containing private objects.
-        var elts = document.getElementsByTagName("li");
-        for(var i=0; i<elts.length; i++) {
-          if (elts[i].className == "private") {
-            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?
-                                        "none":"");
-          }
-        }
-        // Update all list items containing private objects.
-        var elts = document.getElementsByTagName("ul");
-        for(var i=0; i<elts.length; i++) {
-          if (elts[i].className == "private") {
-            elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
-          }
-        }
-        // Set a cookie to remember the current option.
-        document.cookie = "EpydocPrivate="+cmd;
-      }
-function show_private() {
-        var elts = document.getElementsByTagName("a");
-        for(var i=0; i<elts.length; i++) {
-          if (elts[i].className == "privatelink") {
-            cmd = elts[i].innerHTML;
-            if (cmd && cmd.substr(0,4)=="show")
-                toggle_private();
-          }
-        }
-      }
-function getCookie(name) {
-        var dc = document.cookie;
-        var prefix = name + "=";
-        var begin = dc.indexOf("; " + prefix);
-        if (begin == -1) {
-          begin = dc.indexOf(prefix);
-          if (begin != 0) return null;
-        } else
-        { begin += 2; }
-        var end = document.cookie.indexOf(";", begin);
-        if (end == -1)
-        { end = dc.length; }
-        return unescape(dc.substring(begin + prefix.length, end));
-      }
-function setFrame(url1, url2) {
-          parent.frames[1].location.href = url1;
-          parent.frames[2].location.href = url2;
-      }
-function checkCookie() {
-        var cmd=getCookie("EpydocPrivate");
-        if (cmd && cmd.substr(0,4)!="show" && location.href.indexOf("#_") < 0)
-            toggle_private();
-      }
-function toggleCallGraph(id) {
-        var elt = document.getElementById(id);
-        if (elt.style.display == "none")
-            elt.style.display = "block";
-        else
-            elt.style.display = "none";
-      }
-function expand(id) {
-  var elt = document.getElementById(id+"-expanded");
-  if (elt) elt.style.display = "block";
-  var elt = document.getElementById(id+"-expanded-linenums");
-  if (elt) elt.style.display = "block";
-  var elt = document.getElementById(id+"-collapsed");
-  if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
-  var elt = document.getElementById(id+"-collapsed-linenums");
-  if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
-  var elt = document.getElementById(id+"-toggle");
-  if (elt) { elt.innerHTML = "-"; }
-}
-
-function collapse(id) {
-  var elt = document.getElementById(id+"-expanded");
-  if (elt) elt.style.display = "none";
-  var elt = document.getElementById(id+"-expanded-linenums");
-  if (elt) elt.style.display = "none";
-  var elt = document.getElementById(id+"-collapsed-linenums");
-  if (elt) { elt.innerHTML = "<br />"; elt.style.display="block"; }
-  var elt = document.getElementById(id+"-toggle");
-  if (elt) { elt.innerHTML = "+"; }
-  var elt = document.getElementById(id+"-collapsed");
-  if (elt) {
-    elt.style.display = "block";
-    
-    var indent = elt.getAttribute("indent");
-    var pad = elt.getAttribute("pad");
-    var s = "<tt class='py-lineno'>";
-    for (var i=0; i<pad.length; i++) { s += "&nbsp;" }
-    s += "</tt>";
-    s += "&nbsp;&nbsp;<tt class='py-line'>";
-    for (var i=0; i<indent.length; i++) { s += "&nbsp;" }
-    s += "<a href='#' onclick='expand(\"" + id;
-    s += "\");return false'>...</a></tt><br />";
-    elt.innerHTML = s;
-  }
-}
-
-function toggle(id) {
-  elt = document.getElementById(id+"-toggle");
-  if (elt.innerHTML == "-")
-      collapse(id); 
-  else
-      expand(id);
-  return false;
-}
-
-function highlight(id) {
-  var elt = document.getElementById(id+"-def");
-  if (elt) elt.className = "py-highlight-hdr";
-  var elt = document.getElementById(id+"-expanded");
-  if (elt) elt.className = "py-highlight";
-  var elt = document.getElementById(id+"-collapsed");
-  if (elt) elt.className = "py-highlight";
-}
-
-function num_lines(s) {
-  var n = 1;
-  var pos = s.indexOf("\n");
-  while ( pos > 0) {
-    n += 1;
-    pos = s.indexOf("\n", pos+1);
-  }
-  return n;
-}
-
-// Collapse all blocks that mave more than `min_lines` lines.
-function collapse_all(min_lines) {
-  var elts = document.getElementsByTagName("div");
-  for (var i=0; i<elts.length; i++) {
-    var elt = elts[i];
-    var split = elt.id.indexOf("-");
-    if (split > 0)
-      if (elt.id.substring(split, elt.id.length) == "-expanded")
-        if (num_lines(elt.innerHTML) > min_lines)
-          collapse(elt.id.substring(0, split));
-  }
-}
-
-function expandto(href) {
-  var start = href.indexOf("#")+1;
-  if (start != 0 && start != href.length) {
-    if (href.substring(start, href.length) != "-") {
-      collapse_all(4);
-      pos = href.indexOf(".", start);
-      while (pos != -1) {
-        var id = href.substring(start, pos);
-        expand(id);
-        pos = href.indexOf(".", pos+1);
-      }
-      var id = href.substring(start, href.length);
-      expand(id);
-      highlight(id);
-    }
-  }
-}
-
-function kill_doclink(id) {
-  var parent = document.getElementById(id);
-  parent.removeChild(parent.childNodes.item(0));
-}
-function auto_kill_doclink(ev) {
-  if (!ev) var ev = window.event;
-  if (!this.contains(ev.toElement)) {
-    var parent = document.getElementById(this.parentID);
-    parent.removeChild(parent.childNodes.item(0));
-  }
-}
-
-function doclink(id, name, targets_id) {
-  var elt = document.getElementById(id);
-
-  // If we already opened the box, then destroy it.
-  // (This case should never occur, but leave it in just in case.)
-  if (elt.childNodes.length > 1) {
-    elt.removeChild(elt.childNodes.item(0));
-  }
-  else {
-    // The outer box: relative + inline positioning.
-    var box1 = document.createElement("div");
-    box1.style.position = "relative";
-    box1.style.display = "inline";
-    box1.style.top = 0;
-    box1.style.left = 0;
-  
-    // A shadow for fun
-    var shadow = document.createElement("div");
-    shadow.style.position = "absolute";
-    shadow.style.left = "-1.3em";
-    shadow.style.top = "-1.3em";
-    shadow.style.background = "#404040";
-    
-    // The inner box: absolute positioning.
-    var box2 = document.createElement("div");
-    box2.style.position = "relative";
-    box2.style.border = "1px solid #a0a0a0";
-    box2.style.left = "-.2em";
-    box2.style.top = "-.2em";
-    box2.style.background = "white";
-    box2.style.padding = ".3em .4em .3em .4em";
-    box2.style.fontStyle = "normal";
-    box2.onmouseout=auto_kill_doclink;
-    box2.parentID = id;
-
-    // Get the targets
-    var targets_elt = document.getElementById(targets_id);
-    var targets = targets_elt.getAttribute("targets");
-    var links = "";
-    target_list = targets.split(",");
-    for (var i=0; i<target_list.length; i++) {
-        var target = target_list[i].split("=");
-        links += "<li><a href='" + target[1] + 
-               "' style='text-decoration:none'>" +
-               target[0] + "</a></li>";
-    }
-  
-    // Put it all together.
-    elt.insertBefore(box1, elt.childNodes.item(0));
-    //box1.appendChild(box2);
-    box1.appendChild(shadow);
-    shadow.appendChild(box2);
-    box2.innerHTML =
-        "Which <b>"+name+"</b> do you want to see documentation for?" +
-        "<ul style='margin-bottom: 0;'>" +
-        links + 
-        "<li><a href='#' style='text-decoration:none' " +
-        "onclick='kill_doclink(\""+id+"\");return false;'>"+
-        "<i>None of the above</i></a></li></ul>";
-  }
-  return false;
-}
-
-function get_anchor() {
-          var href = location.href;
-          var start = href.indexOf("#")+1;
-          if ((start != 0) && (start != href.length))
-              return href.substring(start, href.length);
-      }
-function redirect_url(dottedName) {
-          // Scan through each element of the "pages" list, and check
-          // if "name" matches with any of them.
-          for (var i=0; i<pages.length; i++) {
-
-              // Each page has the form "<pagename>-m" or "<pagename>-c";
-              // extract the <pagename> portion & compare it to dottedName.
-              var pagename = pages[i].substring(0, pages[i].length-2);
-              if (pagename == dottedName.substring(0,pagename.length)) {
-
-                  // We've found a page that matches `dottedName`;
-                  // construct its URL, using leftover `dottedName`
-                  // content to form an anchor.
-                  var pagetype = pages[i].charAt(pages[i].length-1);
-                  var url = pagename + ((pagetype=="m")?"-module.html":
-                                                        "-class.html");
-                  if (dottedName.length > pagename.length)
-                      url += "#" + dottedName.substring(pagename.length+1,
-                                                        dottedName.length);
-                  return url;
-              }
-          }
-      }