-
g=c       s    d  Z     h  d d <d d <d d <d d <d	 d
 <d d <d d <d d <Z 1 y 2 e d i d  d Z Wn 3 4 d Z n X9 d k Z : d k Z ; d k Z < d k Z = y > d k l	 Z	 Wn ? @ d k	 l	 Z	 n XA d k
 Z
 B d k Z C d k Z D d k Z J d k Z K d k Z Q d e i e i i f d     YZ id e i i f d     YZ d S(   s   Base for docsets.

s   $RCSfile: happydocset.py,v $s   module_namesA   $Id: happydocset.py,v 1.10 2002/08/24 19:57:07 doughellmann Exp $s   rcs_ids(   Doug Hellmann <DougHellmann@bigfoot.com>s   creators   HappyDocs   projects   Sat, 10-Feb-2001 08:18:58 ESTs   createds   $Author: doughellmann $s   authors   $Revision: 1.10 $s   versions   $Date: 2002/08/24 19:57:07 $s   dates    i   s   0.0N(   s   StringIOs   DocSetc      s  Q d  Z  p r d e e e h  e d d d d d d d d f e d d d e e d	  Z d
   Z d   Z d d d  Z (d   Z 0d d  Z Qd   Z je d  Z	 yd   Z
 d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z cd   Z qd   Z e i d  i d  Z d   Z d   Z d    Z 	d!   Z d"   Z &d#   Z /d$   Z Dd%   Z  ]d&   Z! RS('   s  Basic DocSet Parameters
    
        Parameters

            includeComments -- Boolean.  False means to skip the
                               comment parsing step in the parser.
                               Default is True.
            
            includePrivateNames -- Boolean.  False means to ignore
                                   names beginning with _.  Default
                                   is True.

            usePackages -- Boolean.  True means to provide special
                           handling for Packages (directories
                           containing __init__.py files) from
                           non-package Modules.

            prewrittenFileBasenames -- Base names (no extensions) of
                                       files which are to be converted
                                       to the output format and
                                       included in the docset.

            statusMessageFunc -- function which will print a status
                                 message for the user

            title -- the title of the documentation set

            useRecursion -- Recurse into subdirectories looking for
                            subdirectories and files within them.

    s    i   s   ANNOUNCEs   CHANGESs   LICENSEs   READMEs   TODOs@   HappyDoc Generated Documentation (use -t to specify a new title)c    s  r   t  i i d d  d |  d |  d |  d |  t  i i    h  |  _	  h  |  _
  h  |  _  |  i	 |  i
 |  i f }  | |  _  |  i d |   t i i |    t  i i i |   |  |  |  |   | |  _  | |  _  | |  _  | |  _  g  |  _  | |  _  | |  _  | o  | |  _  n  | |  _   | |  _"  |	 |  _$  t  i% i& |  |  _(  t  i% i& |  |  _*  t  i% i& |  |  _,  | |  _.  |
 |  _0  | |  _2  g  |  _3  | |  _5  g  |  _6  x@ | i8   D ]/ \ } }  |  i d | | |  i; i< f  q"Wt= |  i |  f |  i$  |  _> |  i? |  t  i i@   d	 Sd	 S(
   s  Initialize the documentation set.

        Parameters

            formatterFactory -- a callable object which creates the type
                                of formatter class to be used for formatting
                                the documentation set.  The object will be
                                called and passed the DocSet along with other
                                configuration values for the formatter.

            parserFunc -- Parser function which returns the info for a module.

            inputModuleNames -- List of modules or directories to be documented.
            
            outputBaseDirectory -- the name of the root directory for this and any
                                   parent docsets

            docsetBaseDirectory -- the name of the root directory for this docset

            descriptionFilename -- File describing the docset as a whole.

            formatterParameters -- other named configuration values to be passed
                                   to the formatter when it is created through the
                                   factory.  Any unrecognized values will be
                                   quietly ignored.

            ignoreDirFunc -- Function which returns true if the directory should
                             be ignored.

            packageName -- Name of the package being documented by
                           this docset.  This value should only be
                           specified when recursively creating a
                           docset (HappyDoc handles this case
                           automatically).

            docsetRoot=None -- The root DocSet object, when recursing.

            *For others, see class documentation.*
                                   
        s   HappyDocsets   __init__s   packageNames   parents   docsetBaseDirectorys   outputBaseDirectorys$   Initializing documentation set %s...s7   WARNING: Parameter "%s" (%s) unrecognized by docset %s.N(A   s   happydoclibs   TRACEs   intos   packageNames   parents   docsetBaseDirectorys   outputBaseDirectorys   callerParents   selfs   _all_packagess   _all_moduless   _all_classess
   namespacess   statusMessageFuncs   _status_message_funcs   statusMessages   titles   UserLists   __init__s   happydoms   HappyDOMs   formatterFactorys   _formatter_factorys
   parserFuncs   _parser_funcs   defaultParserConfigValuess   _default_parser_config_valuess   inputModuleNamess   _input_module_namess   _contained_namess   _titles   _output_base_directorys   _docset_base_directorys   descriptionFilenames   _description_filenames   formatterParameterss   _formatter_configurations   optiontoolss   getBooleanArgumentValues   includePrivateNamess   _include_private_namess   includeCommentss   _include_commentss   usePackagess   _use_packagess   useRecursions   _use_recursions   ignoreDirFuncs   _ignore_dir_names   prewrittenFileBasenamess   _prewritten_file_basenamess   _prewritten_filess
   docsetRoots   _docset_roots   _open_handless   extraNamedParameterss   itemss   extra_params   extra_values	   __class__s   __name__s   applys
   _formatters   processFiless   outof(   s   selfs   formatterFactorys
   parserFuncs   defaultParserConfigValuess   inputModuleNamess   authors   outputBaseDirectorys   docsetBaseDirectorys   descriptionFilenames   formatterParameterss   ignoreDirFuncs   includeCommentss   includePrivateNamess   usePackagess   prewrittenFileBasenamess   statusMessageFuncs   titles   useRecursions   packageNames
   docsetRoots   parents   extraNamedParameterss   extra_params
   namespacess   extra_value(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   __init__r sb   N			

 '	c    s)   t  d | |  i i   d S(   s/   Convenient way to raise a consistent exception.s%   %s is not implemented for this class.N(   s   AttributeErrors   names   selfs	   __class__s   __name__(   s   selfs   name(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   _requiredOfSubclasss   c    s   t  |  _ d  Sd  S(   N(   s   Nones   selfs
   _formatter(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   __del__s   c    s5    |  i o !|  i | |  n "d Sd S(   s$   Print a status message for the user.N(   s   selfs   _status_message_funcs   messages   verboseLevel(   s   selfs   messages   verboseLevel(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   statusMessages   c    sa   ()*t  i i d d  +t  i i |  i   ,|  i    } -t  i i	 |  .| Sd S(   s0   Returns the "filename" of the documentation set.s   HappyDocsets   getFilenameN(
   s   happydoclibs   TRACEs   intos   paths   removePrefixs   selfs   getDocsetBaseDirectorys   getOutputBaseDirectorys   my_paths   outof(   s   selfs   my_path(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getFilename(s   c    s   059t  i i i |  | d d } :| o ;| Sn ?|  i i d t	  } @| o1 B| i | d d } C| o D| Sn n K| o) Lt  i i i |  M| Nd | Sn Ot	 Sd S(   s   Look up the info record for the name.

        Looks in the namespaces registered for this DOM node.  If no
        value is found, 'None' is returned.
        s	   tryParenti    s   __init__N(   s   happydoclibs   happydoms   HappyDOMs   getSymbolInfos   selfs   names	   my_answers   _all_moduless   gets   Nones   init_modules   init_answers	   tryParent(   s   selfs   names	   tryParents   init_answers	   my_answers   init_module(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getSymbolInfo0s   !



c 
   s_  QRSt  i i d d Td | d | U|  i i d |   }	 V| i	 |   } Wt  i i d |  Yd | i   } Zt |  } [| | | j o; \t  i i d  ]| |  } ^t  i i d |  n `| i   } at  i i | |  } bt  i i d	 |  c| i | d| i e|  i    } ft  i i |  g| Sd
 S(   s3   Return a reference to this package from sourceNode.s   DocSets   getReferences	   formatters
   sourceNodes   __init__s   fully_qualified_names   .%ss"   fully qualified name has extensions   my_root_nodeN(   s   happydoclibs   TRACEs   intos	   formatters
   sourceNodes   selfs   _all_moduless   gets   init_modules   getOutputNameForObjects   fully_qualified_names   writeVars   getFilenameExtensions	   extensions   lens   len_extensions   writes   getRootNodeNames   root_node_names   paths   joins   my_root_nodes   getReferences   names   getReferenceTargetNames   refs   outof(
   s   selfs	   formatters
   sourceNodes	   extensions   root_node_names   len_extensions   refs   fully_qualified_names   my_root_nodes   init_module(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getReferenceQs(   	c    s   jklt  i i d d md | n| t j o o|  i i t  } n q|  i i |  } rt  i i	 |  s| Sd S(   sC   Returns the output destination for documentation about this object.s   DocSets   getFullOutputNameForObjects
   infoObjectN(
   s   happydoclibs   TRACEs   intos
   infoObjects   Nones   selfs
   _formatters   getFullOutputNameForObjects   output_names   outof(   s   selfs
   infoObjects   output_name(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getFullOutputNameForObjectjs   c    sm   yt  i i |  } |   } y | i |  } Wn t j
 o t	 } n X| Sd S(   s   Retrieve documentation that is not in a program source file.

        Parameters:

          'filename' -- Name of the file to retrieve.
        N(
   s   happydoclibs	   docstrings   getConverterFactoryForFiles   filenames   converter_factorys	   converters   getExternalDocumentationFiles   files   IOErrors   None(   s   selfs   filenames   converter_factorys	   converters   file(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getExternalDocumentationFileys   c    sV   x? |  i D]1 } t i i |  d  d j o | Sn q Wt Sd S(   sA   If a README file was found, return the name of the file.
        i   s   READMEN(   s   selfs   _prewritten_filess   fnames   happydoclibs   paths   basenames   None(   s   selfs   fname(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   _foundReadmes    	 c    sj  t  i i d d d |  i   d } d } | o |  i i d  o3 t  i i	 d  |  i d i
   \ } } n | o
 |  i   oh |  i   } |  i |  } | o9 t  i i	 d |  | i   } | i   } n n | o |  i o# t  i i	 d	  |  i } n t  i i |  | | f Sd
 S(   s:   Return one line summary of the documentation set.
        s   HappyDocsets   getSummaryAndFormats   names    s	   PlainTexts   __init__s   Trying __init__.pys   Trying file %ss   Trying titleN(   s   happydoclibs   TRACEs   intos   selfs   getNames	   one_liners   formats   _all_moduless   has_keys   writes   getSummaryAndFormats   _foundReadmes   readme_filenames   getExternalDocumentationFiles   external_files   oneLiners   getInputTypes   _titles   outof(   s   selfs	   one_liners   readme_filenames   external_files   format(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getSummaryAndFormats(   		 
c    s&   |  i   \ } } | Sd S(   sG   Returns the docstring converter name for the docstring for this object.N(   s   selfs   getSummaryAndFormats   summarys   format(   s   selfs   formats   summary(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getDocStringFormats   c 	   s  t  i i d d  d } } |  i   } |  i o |  i d j o	d } |  i
 of |  i
 d } t  i i |  o | } n0 t  i i |  o t  i i |  } n n t  i i | |  i  } |  i d | d  |  i |  } | o5 t  i i d	  t |  } | i   } n n | o | d
 f j oX |  i d
 d  } | o5 t  i i d  | i   } | i   } n n | o t  i i d  n t  i i d  | | f Sd S(   s_   Returns the complete description of the docset and the docstring converter name for the format.s   HappyDocSets   getDescriptionAndFormats    s   -s   .i    s$   Looking for docset description in %si   s   file existss   __init__s   found __init__s   found descriptions   did not find descriptionN(   s   happydoclibs   TRACEs   intos   descriptions
   input_types   selfs   getNames   names   _description_filenames   description_dirs   _contained_namess
   first_names   paths   isdirs   existss   dirnames   joins   description_filenames   statusMessages   getExternalDocumentationFiles   description_files   writes   strs   getInputTypes   getSymbolInfos   init_modules   getDocStrings   getDocStringFormats   outof(	   s   selfs
   first_names   names
   input_types   init_modules   description_files   description_dirs   description_filenames   description(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getDescriptionAndFormats>   	



c    s   |  i Sd S(   s9   Returns the formatter instance being used by this docset.N(   s   selfs
   _formatter(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getFormatters   c    s,   |  i o |  i Sn |  Sd S(   s7   Return the root node of the documentation set.
        N(   s   selfs   _docset_root(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getDocsetRoots   c  	  s   	t  i i d d 
d | d | d | |  i | | |  } t	 |  i
 f  |  } t  i i   | Sd S(   s  Create a new object which is configured the same as the current.

        It is possible, by passing optional arguments, to
        create a clone with a different configuration.  This
        is useful for recursive work.

        Parameters

          packageName -- The name of the package being created.

          docsetBaseDirectory -- The base of output for the new docset.

          inputModuleNames -- Names of files to be included.

        s   HappyDocsets   clones   packageNames   docsetBaseDirectorys   inputModuleNamesN(   s   happydoclibs   TRACEs   intos   packageNames   docsetBaseDirectorys   inputModuleNamess   selfs   getCloneArgumentss   constructor_argss   applys	   __class__s   new_objs   outof(   s   selfs   packageNames   docsetBaseDirectorys   inputModuleNamess   constructor_argss   new_obj(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   clones   		c    s  ./|  i   } 0t i i d |  2| t |   } 3x0 3| o | d t
 i j o 7| d  } qE W8t i i d |  <h  |  i d <|  i d <|  i d <| d <|  i d <| d	 <|  i d
 <|  i d <|  i d <|  i d <|  i d <|  i d <|  i d <|  i d <|  i d <|  d <} T|  i   o Ud |  i | f } n Wd |  i | f } X| | d <]| i h  | d <|  i   d < a| Sd S(   st  Return arguments to create a new docset based on the current one.

        Parameters

          packageName -- The name of the package being created.

          docsetBaseDirectory -- The base of output for the new docset.

          inputModuleNames -- Specify the file names to be included in
          the docset.

        Subclasses should override this method, but should also call
        the parent method using an algorithm such as::

          subclass_args = {}
          subclass_args.update( ParentClass.getCloneArguments(
                                    self,
                                    packageName,
                                    baseDirectory,
                                    inputModuleNames) )
          subclass_args.update( {
              "subClassArgument":self._sub_class_argument,
              })
          return subclass_args

        s   current_docset_pathis   docset_base_directory_prefixs   formatterFactorys
   parserFuncs   defaultParserConfigValuess   inputModuleNamess   outputBaseDirectorys   docsetBaseDirectorys   descriptionFilenames   formatterParameterss   ignoreDirFuncs   includeCommentss   includePrivateNamess   usePackagess   prewrittenFileBasenamess   statusMessageFuncs   useRecursions   parents   %s.%ss   %s: %ss   titles   packageNames
   docsetRootN(    s   selfs   getPaths   current_docset_paths   happydoclibs   TRACEs   writeVars   docsetBaseDirectorys   lens   packageNames   docset_base_directory_prefixs   oss   seps   _formatter_factorys   _parser_funcs   _default_parser_config_valuess   inputModuleNamess   _output_base_directorys   _description_filenames   _formatter_configurations   _ignore_dir_names   _include_commentss   _include_private_namess   _use_packagess   _prewritten_file_basenamess   _status_message_funcs   _use_recursions   constructor_argss   getNames   _titles   titles   updates   getDocsetRoot(   s   selfs   packageNames   docsetBaseDirectorys   inputModuleNamess   titles   docset_base_directory_prefixs   constructor_argss   current_docset_path(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getCloneArgumentss    (c    s   cdet  i i d d fd | h|  i d |  i|  i |  j| k|  i l|  i  } nt  i i
 |  o| Sd S(   s8   Parse the file and return the parseinfo instance for it.s   DocSets   getFileInfos   fileNames   Getting info for %sN(   s   happydoclibs   TRACEs   intos   fileNames   selfs   statusMessages   _parser_funcs   _include_commentss   _default_parser_config_valuess   module_infos   outof(   s   selfs   fileNames   module_info(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getFileInfocs   	c    s  qst|  i d  u|  i d | d  vg  } wx |  i Dw] } xd | } y|  i d | d  zt i i	 | |  } {|  i d t |  d  |xY | D|]N } | d d j o
 q n |  i d	 | d
  | i |  q WqC W| Sd S(   s>   Look for prewritten documentation files in 'dirName'.
        s*   Looking for non-source documentation filess     in %si   s   %s*s     for %ss       %sis   *~#s*     Found external documentation file
    %si   N(   s   selfs   statusMessages   dirNames   filess   _prewritten_file_basenamess   file_basenames   patterns   happydoclibs   paths   findFilesInDirs   founds   strs   fs   append(   s   selfs   dirNames   filess   fs   founds   patterns   file_basename(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   lookForPrewrittenFilesqs$   	 	
 	

s   ^.*\.(py|cgi)$c    s?  t  i i d d d | x| D]} t  i i |  o) |  i p |  i |  o |  i	 d j o|  i
 i |  t  i i |  } |  i	 o d |  _	 n t  i i | d  } t  i i |  o |  i o |  i d | d  t  i i d |  | } t  i i |  } t  i i |  } |  i   } |  i   }
 t  i i |
 | |  }	 |  i d	 | d
 |	 d |  } | i  |  | _! |  i |  nA |  i d |  |  i! |  i  |  |  _! |  i" |  n t  i i |  o
 | |  o t  i i d  |  i
 i |  y |  i$ |  } Wnf t& j
 oW } |  i d | | i( | i' f  |  i d | i)  |  i d |  n X|  i |  n |  i d | d  q, Wt  i i*   d Sd S(   s   Get information about a list of files.

        Parameters

          fileNames -- Sequence of names of files to be read.

        Each file in fileNames is parsed to extract information
        to be used in documenting the file.

        s   HappyDocsets   processFiless	   fileNamesi    is   __init__.pys   Detected package %si   s   packageNames   docsetBaseDirectorys   inputModuleNamess   Recursing into %ss   regular module files   
ERROR: SyntaxError: %s[%s] %ss   
%ss   Skipping %ss   Ignoring %si   N(+   s   happydoclibs   TRACEs   intos	   fileNamess	   file_names   paths   isdirs   selfs   _ignore_dir_names   _use_recursions   _contained_namess   appends   findFilesInDirs   dir_contentss   joins	   init_files   existss   _use_packagess   statusMessages   writes   orig_file_names   removeRelativePrefixs   basenames   package_names   getDocsetBaseDirectorys   docset_bases   getOutputBaseDirectorys   output_bases   joinWithCommonMiddles   new_bases   clones
   new_docsets   lookForPrewrittenFiless   _prewritten_filess   processFiless   moduleFileNames   getFileInfos	   file_infos   SyntaxErrors   msgs   linenos   texts   outof(   s   selfs	   fileNamess   moduleFileNames   dir_contentss
   new_docsets   package_names   orig_file_names   docset_bases	   file_infos   new_bases   output_bases	   file_names   msgs	   init_file(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   processFilessT   
 	B	 		$#c    s@   t  i i d d  t  i i |  i  |  i Sd S(   s6   Returns the base directory for this documentation set.s   HappyDocsets   getDocsetBaseDirectoryN(   s   happydoclibs   TRACEs   intos   outofs   selfs   _docset_base_directory(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getDocsetBaseDirectorys   c    s@    t  i i d d  t  i i |  i  |  i Sd S(   s6   Returns the base directory for all documentation sets.s   HappyDocsets   getOutputBaseDirectoryN(   s   happydoclibs   TRACEs   intos   outofs   selfs   _output_base_directory(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getOutputBaseDirectorys   c    s    |  i i | t  Sd S(   s.   Returns class info if have it, None otherwise.N(   s   selfs   _all_classess   gets	   classNames   None(   s   selfs	   className(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   getClassInfos   c    s!   	|  i d  d Sd S(   s   Write the documentation set to the output.

        Developers creating their own, new, docset types should
        override this method to cause the docset instance to
        generate its output.

        s   writeN(   s   selfs   _requiredOfSubclass(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   write	s   c    s;    !|  i o "t d   #|  } n $| Sd S(   s]  Remove names which should be ignored.

        Parameters

          nameList -- List of strings representing names of methods,
          classes, functions, etc.
        
        This method returns a list based on the contents of nameList.
        If private names are being ignored, they are removed before
        the list is returned.

        c    s"   "|  d d j p |  d  d j S(   Ni    s   _i   s   __(   s   x(   s   x(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   <lambda>"s    N(   s   selfs   _include_private_namess   filters   nameList(   s   selfs   nameList(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   _filterNamess
   c    sR   &'(x; |  i D(]- } )y *|  i |  Wn +,n Xq W-d Sd S(   s!   Close the open documentation set.N(   s   selfs   _open_handless   fs   closeOutput(   s   selfs   f(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   close&s    	c    s   /12| i |  i j o 6| |  i | i   <nM ;| |  i | i   <<x0 | i   D<] } =| i |  |  i	 | <q\ WAt
 i
 i |  |  Bd Sd S(   s$   Add a module to the docset.
        N(   s
   infoObjects	   __class__s   selfs   _all_packagess   getNames   _all_moduless   getClassNamess   cs   getClassInfos   _all_classess   UserLists   append(   s   selfs
   infoObjects   c(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   append/s    	c    s   DUV|  i d | d  W|  i d | d  X|  i d | d  Y|  i i | | |  } Z|  i i	 |  [| Sd S(   s  Open output for writing.
        
        Using this method to open output destinations
        means they will automatically be closed.

        Parameters

          name -- Name of output destination to open.

          title -- The main title to be given to the output (e.g.,
          HTML page title or other documentation title).

          subtitle -- A subtitle which should be applied to the
          output.

        See also 'closeOutput'.
        s   	Documenting : "%s"i   s   	              "%s"i   s   	         to : "%s"N(
   s   selfs   statusMessages   titles   subtitles   names
   _formatters
   openOutputs   fs   _open_handless   append(   s   selfs   names   titles   subtitles   f(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys
   openOutputDs   c    s$   ]de|  i i |  fd Sd S(   su   Close the output handle.

        Parameters

          output -- A handle created by 'openOutput'.
        
        N(   s   selfs
   _formatters   closeOutputs   output(   s   selfs   output(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   closeOutput]s   ("   s   __doc__s   Nones   __init__s   _requiredOfSubclasss   __del__s   statusMessages   getFilenames   getSymbolInfos   getReferences   getFullOutputNameForObjects   getExternalDocumentationFiles   _foundReadmes   getSummaryAndFormats   getDocStringFormats   getDescriptionAndFormats   getFormatters   getDocsetRoots   clones   getCloneArgumentss   getFileInfos   lookForPrewrittenFiless   res   compiles   matchs   processFiless   getDocsetBaseDirectorys   getOutputBaseDirectorys   getClassInfos   writes   _filterNamess   closes   appends
   openOutputs   closeOutput(    (    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   DocSetQ s<   	K	
!!1Om	s   DocsetUnitTestc      sp   ikd   Z  e i d j o d   Z n d   Z d   Z d   Z d   Z d   Z RS(	   Nc    s7  kld } md } nd  k } ot d | i i i pd | i i	 qd h  d d <rd | g sd	 | td
 |  i  } v| i   } wt o! | | j p t d | | f  y| i   } zt o! | | j p t d | | f  || i   } }t o! | | j p t d | | f  d  Sd  S(   Ns   TestCases/test.pys   c:\happydoc\HappyDocTestOuts   formatterFactorys
   parserFuncs   defaultParserConfigValuess   StructuredTexts   docStringFormats   inputModuleNamess   outputBaseDirectorys   statusMessageFuncs%   Docset directory %s does not match %ss%   Output directory %s does not match %ss'   File name %s does not match expected %s(   s   filenames   test_output_dirs$   happydoclib.formatter.formatter_Nulls   happydoclibs   DocSets	   formatters   formatter_Nulls   NullFormatters	   parseinfos   getDocss   selfs   status_message_funcs   docsets   getDocsetBaseDirectorys   docset_base_dirs	   __debug__s   AssertionErrors   getOutputBaseDirectorys   output_base_dirs   getFilenames   docset_file_name(   s   selfs   docset_base_dirs   test_output_dirs   output_base_dirs   docsets   docset_file_names   happydoclibs   filename(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   testOutputDirectoryks    			+++s   ntc    sk  d }	 h  d d <d d <d d <d d	 <} | i   } h  } | i |  d
 | d <d | d	 <| i   } d  k } t	 d | i
 i i d | i i d h  d d <d |	 g d |  i d |  i  } xd| i D]V} | i   } t o | | j p t d |  | | } | i   \ } } t o$ | | j p t d | | | f  | d j o x | i D] } | i   }
 |
 d j o
 qn t o |
 | j p t d |
  | |
 } | i   \ } } t o$ | | j p t d |
 | | f  qWn qWd  Sd  S(   Ns    TestCases/test_package_summariess   Summary from __init__.pys   FromInits   Summary from READMEs
   FromReadmes   Summary from README.txts   FromReadmeTxtsR   HappyDoc Generated Documentation (use -t to specify a new title): Nested.FromTitles	   FromTitles   Nested Moduless   NestedsK   HappyDoc Generated Documentation (use -t to specify a new title): FromTitles   formatterFactorys
   parserFuncs   defaultParserConfigValuess   StructuredTexts   docStringFormats   inputModuleNamess   outputBaseDirectorys   statusMessageFuncs%   Unexpected module %s found in docset.s<   Summary values do not match for %s (expected "%s", got "%s")s   __init__s1   Unexpected child module %s found in child docset.sI   Summary values do not match for child module %s (expected "%s", got "%s")(!   s   filenames   basic_expected_package_infos   keyss   basic_expected_package_namess   parent_expected_package_infos   updates   parent_expected_package_namess$   happydoclib.formatter.formatter_Nulls   happydoclibs   DocSets	   formatters   formatter_Nulls   NullFormatters	   parseinfos   getDocss   selfs
   output_dirs   status_message_funcs   docsets   datas   ms   getNames   names	   __debug__s   AssertionErrors   expected_summarys   getSummaryAndFormats   actual_summarys   formats   cms   cnames   cexpected_summarys   cactual_summary(   s   selfs   basic_expected_package_infos   cactual_summarys   names   cms   formats   expected_summarys   ms   parent_expected_package_infos   filenames   cnames   docsets   actual_summarys   parent_expected_package_namess   basic_expected_package_namess   happydoclibs   cexpected_summary(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   testPackageSummariessB   	-	 	%. 	
%:c    s  d } d  k }
 t d |
 i i i d |
 i i d h  d d <d | g d |  i
 d	 | d
 |  i  } t o  t | i  d j p
 t d  | i d } t o | p
 t d  y | d } Wn& t j
 o |  i d  n Xt o | i   d j p
 t d  | i   } | i   d d d g }	 |	 i   | o/ t o! | |	 j p t d |	 | f  nZ d d g } | i   | i |  } t o! | | j p t d | | f  d  Sd  S(   Ns   TestCases/test_private_names.pys   formatterFactorys
   parserFuncs   defaultParserConfigValuess   StructuredTexts   docStringFormats   inputModuleNamess   outputBaseDirectorys   includePrivateNamess   statusMessageFunci   s   Did not get expected docset.i    s   Could not retrieve modules   Publics!   Could not retrieve class "Public"s,   Name of class does not match expected value.s   public_methods   _private_methods   __getattr__s*   Expected unfiltered names %s, got names %ss(   Expected filtered names %s, got names %s(   s   filenames$   happydoclib.formatter.formatter_Nulls   happydoclibs   DocSets	   formatters   formatter_Nulls   NullFormatters	   parseinfos   getDocss   selfs
   output_dirs   includePrivateNamess   status_message_funcs   docsets	   __debug__s   lens   datas   AssertionErrors   ms   cs   KeyErrors   fails   getNames   getMethodNamess   all_function_namess   sorts   expected_all_function_namess    expected_filtered_function_namess   _filterNamess   filtered_function_names(   s   selfs   includePrivateNamess   cs   filtered_function_namess    expected_filtered_function_namess   ms   filenames   all_function_namess   docsets   expected_all_function_namess   happydoclib(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   _privateNameTests8   		*'
/+c    s   |  i d  d  Sd  S(   Ni   (   s   selfs   _privateNameTest(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   testPrivateNamesKeeps   c    s   |  i d  d  Sd  S(   Ni    (   s   selfs   _privateNameTest(   s   self(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   testPrivateNamesIgnores   c    sA   t  i i |  } | |  i j o d Sn d Sd  S(   Ni   i    (   s   happydoclibs   paths   basenames   dirNames   dir_names   selfs   ignore_list(   s   selfs   dirNames   dir_name(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   _testIgnoreDirectoriesTestFuncs   c    s  d } d k } d d d d d d g |  _ t d	 | i i i d
 | i	 i
 d h  d d <d | g d |  i d |  i  d |  i  } xK | i D]= } | i   } t o | |  i j p t d |  q Wd Sd S(   s   Ignore some subdirectories.s   ../HappyDocNs   docsets	   formatters	   docstrings	   TestCasess   dists   tmps   formatterFactorys
   parserFuncs   defaultParserConfigValuess   StructuredTexts   docStringFormats   inputModuleNamess   outputBaseDirectorys   ignoreDirFuncs   statusMessageFuncs)   Found %s but it should have been ignored.(   s   filenames$   happydoclib.formatter.formatter_Nulls   happydoclibs   selfs   ignore_lists   DocSets	   formatters   formatter_Nulls   NullFormatters	   parseinfos   getDocss
   output_dirs   _testIgnoreDirectoriesTestFuncs   status_message_funcs   docsets   datas   ms   getNames   names	   __debug__s   AssertionError(   s   selfs   names   docsets   ms   happydoclibs   filename(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   testIgnoreDirectoriess    	 	,(	   s   testOutputDirectorys   oss   names   testPackageSummariess   _privateNameTests   testPrivateNamesKeeps   testPrivateNamesIgnores   _testIgnoreDirectoriesTestFuncs   testIgnoreDirectories(    (    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   DocsetUnitTestis   6((   s   __doc__s   __rcs_info__s   splits   __version__s   oss   parsers   res   strings	   cStringIOs   StringIOs   symbols   syss   tokens   UserLists   happydoclibs	   parseinfos   happydoms   HappyDOMs   DocSets   StreamFlushTests   DocsetUnitTest(   s	   parseinfos   strings   StringIOs   UserLists   symbols   parsers   DocsetUnitTests   syss   res   tokens   DocSets   __version__s   oss   happydoclibs   __rcs_info__(    (    sU   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/happydocset.pys   ? s0   Q%   