*
G2;c       s      d  k  Z  d  k Z  d k l Z l Z l Z l Z l Z l Z  e  i	 d  i
 d  Z  d   Z ( d   Z 6 d   Z D d   Z ] d Z b e  i	 e  d	  Z  e Z  d
 e i f d     YZ  d e f d     YZ d  S(   N(   s   splits   joins   replaces
   expandtabss   strips   finds   ^\s+c    sT      | |   }  | t j	 o$  | i   \ } }  | | Sn  d Sd S(   s@    
    Find the number of leading spaces. If none, return 0.
    i    N(   s   fronts   strs   results   Nones   spans   starts   end(   s   strs   fronts   results   ends   start(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys	   indention s   c    s      | d t t |    j o4  |  o  |  t |   d i   Sn  |  Sn   |  | d } ! d } " xI " | d | j  o4 # | i   t | i    d } $ | d } q{ W& | i   Sd S(   s   
    find what will be the parant paragraph of
    a sentence and return that paragraph's
    sub-paragraphs. The new paragraph will be
    appended to those sub-paragraphs
    i   i    N(   s   tops   ranges   lens   structs   getSubparagraphss   runs   is   level(   s   structs   tops   levels   is   run(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   insert s   !
	 #c    sv   ( . 0 |  i   o 1 t |  i    Gd GHn 2 |  i   o0 3 x& |  i   d 3 r } 4 t |  qT Wn d S(   s   
    runs through the structure and prints out
    the paragraphs. If the insertion works
    correctly, display's results should mimic
    the orignal paragraphs.
    s   
i    N(   s   structs   getColorizableTextss   joins   getSubparagraphss   xs   display(   s   structs   x(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   display( s    	c    sp   6 < > |  i   o ? |  i   Gd GHn @ |  i   o0 A x& |  i   d A r } B t |  qN Wn d S(   s   
    runs through the structure and prints out
    the paragraphs. If the insertion works
    correctly, display's results should mimic
    the orignal paragraphs.    
    s   
i    N(   s   structs   getNodeValues   getSubparagraphss   xs   display(   s   structs   x(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   display26 s    	c    s   D J L |  i   } M x5 | d M r( } N |  | | j o O |  | =n q! WP |  i   } Q | o R d Sn9 T x2 | d T r% } U |  | | j o V | Sn q WW d } X x0 | d X r# } Y | | j o Z | } n q W[ | d Sd S(   s   
    remove all level information of levels
    with a greater level of indentation.
    Then return which level should insert this
    paragraph
    i    i   N(   s   levelss   keyss   keys   indents   highest(   s   levelss   indents   keys   highests   keys(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys	   findlevelD s&    	 		 	s   (\n\s*\n|\r\n\s*\r\n)c  	  s!  b h j d } k d } l h  d d <} m d }	 n g  }
 o |
 } q t |   }  r d d |  d f }  s | i	 |   }  t t
 t |   }  v |  o v t   Sn x g  } y x/ |  d y r" } z | i t |  | g  q W| t |  d  } } | | d < x| d  r\ } }  | d j oW  |	 d }	  d }  d }  h  d d <}  |
 i t | d | d |  n | | j o^  | d }  | }  | | | < t |
 |	 |  }  | i t | d | d |  n | | j  o  t | |  }  | d j o  | } n  | }  |	 o&  |
 i t | d | d |  n8  t |
 |	 |  }  | i t | d | d |  nd  t |
 |	 |  o  t |
 |	 |  } n  |
 }  | }  | i t | d | d |  qW t |
  Sd S(   s   
    StructuredText accepts paragraphs, which is a list of 
    lines to be parsed. StructuredText creates a structure
    which mimics the structure of the paragraphs.
    Structure => [paragraph,[sub-paragraphs]]
    i    s   %s%s%ss   

i   s   indents   levelN(   s   currentlevels   currentindents   levelss   levels   structs   runs
   expandtabss
   paragraphss	   delimiters   splits   filters   strips   StructuredTextDocuments   inds	   paragraphs   appends	   indentions   indents   StructuredTextParagraphs   inserts	   findlevels   results   currentindet(   s
   paragraphss	   delimiters   currentindets   inds	   paragraphs   results   currentindents   levelss   indents   levels   structs   runs   currentlevel(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   StructuredTextb s`   					 	 	  		&	&	&&		&s   StructuredTextParagraphc      s    d Z   e d  Z  e e g   d  Z  d   Z  d   Z  d   Z  d   Z  d   Z	  d	   Z
  d
   Z  d   Z   e e g   d  Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z RS(   Ni    c    s     | t j o  g  } n  | |  _  t |  |  _  | i   |  _	  x2 | i
   d  r \ } }  t |  | |  qb Wd  S(   Ni    (   s   subss   Nones   srcs   selfs   _srcs   lists   _subss   kws   keyss   _attributess   itemss   ks   vs   setattr(   s   selfs   srcs   subss   kws   vs   k(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   __init__ s      c    sG     |  i }  | |  | j	 o  | g } n  | |  i Sd  S(   N(   s   selfs   _srcs   srcs   types   lts   _subs(   s   selfs   types   lts   src(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getChildren s    c    s     t  |  | t  Sd  S(   N(   s   getattrs   selfs   names   None(   s   selfs   name(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getAttribute s   c    s:     t  |  |  o   t i | t |  |   Sn d  S(   N(   s   hasattrs   selfs   names   STDOMs   Attrs   getattr(   s   selfs   name(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getAttributeNode s   c    sU     h  }  x/ |  i d  r }  t |  | d  | | <q W t i |  Sd  S(   Ni    s    (   s   ds   selfs   _attributess   as   getattrs   STDOMs   NamedNodeMap(   s   selfs   ds   a(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getAttributes s
   	 	c    s     |  i Sd  S(   N(   s   selfs   _subs(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getSubparagraphs s   c    s     | |  _ d  S(   N(   s   subss   selfs   _subs(   s   selfs   subs(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   setSubparagraphs s   c    s     |  i f Sd  S(   N(   s   selfs   _src(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getColorizableTexts s   c    s     | d |  _ d  S(   Ni    (   s   srcs   selfs   _src(   s   selfs   src(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   setColorizableTexts s   c    s     g  } | i }  | d |  i p d d |  i i t |  i  d   x$ |  i	 d  r }  | |  q^ W | d |  i p d d   t | d  Sd  S(   Ns    i    s   %s(s   , [s   ])s   
(   s   rs   appends   as   selfs   indents	   __class__s   __name__s   strs   _srcs   _subss   ps   join(   s   selfs   rs   ps   a(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   __repr__ s   : 	 c    s     |  i | |  Sd  S(   N(   s   selfs   getChildrens   types   lt(   s   selfs   types   lt(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_Children s   c    s     |  i |  Sd  S(   N(   s   selfs   getAttributes   name(   s   selfs   name(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_Attribute s   c    s     |  i |  Sd  S(   N(   s   selfs   getAttributeNodes   name(   s   selfs   name(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_AttributeNode s   c    s     |  i   Sd  S(   N(   s   selfs   getAttributes(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_Attributes s   c    s     |  i   Sd  S(   N(   s   selfs   getSubparagraphs(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_Subparagraphs s   c    s     |  i |  Sd  S(   N(   s   selfs   setSubparagraphss   subs(   s   selfs   subs(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _set_Subparagraphs s   c    s     |  i   Sd  S(   N(   s   selfs   getColorizableTexts(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_ColorizableTexts s   c    s     |  i |  Sd  S(   N(   s   selfs   setColorizableTextss   src(   s   selfs   src(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _set_ColorizableTexts s   (   s   indents   Nones   __init__s   types   getChildrens   getAttributes   getAttributeNodes   getAttributess   getSubparagraphss   setSubparagraphss   getColorizableTextss   setColorizableTextss   __repr__s   _get_Childrens   _get_Attributes   _get_AttributeNodes   _get_Attributess   _get_Subparagraphss   _set_Subparagraphss   _get_ColorizableTextss   _set_ColorizableTexts(    (    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   StructuredTextParagraph s(   	s   StructuredTextDocumentc      s}    d  Z    f  Z  e d  Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 RS(	   s[   
    A StructuredTextDocument holds StructuredTextParagraphs
    as its subparagraphs.
    c    s,     t  t i  |  d | f  |  d  S(   Ns    (   s   applys   StructuredTextParagraphs   __init__s   selfs   subss   kw(   s   selfs   subss   kw(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   __init__ s   c    s   |  i Sd  S(   N(   s   selfs   _subs(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getChildrens   c    s   f  Sd  S(   N(    (   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   getColorizableTextss   c    s
   	d  S(   N(    (   s   selfs   src(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   setColorizableTextss   c    s{   g  } | i } | d |  i i  x( |  i d r } | | d  q; W| d  t | d  Sd  S(   Ns   %s([i    s   ,s   ])s   
(	   s   rs   appends   as   selfs	   __class__s   __name__s   _subss   ps   join(   s   selfs   rs   ps   a(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   __repr__s    	 c    s   |  i   Sd  S(   N(   s   selfs   getChildren(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_Childrens   c    s   |  i   Sd  S(   N(   s   selfs   getColorizableTexts(   s   self(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _get_ColorizableTextss   c    s   |  i |  Sd  S(   N(   s   selfs   setColorizableTextss   src(   s   selfs   src(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   _set_ColorizableTextss   (   s   __doc__s   _attributess   Nones   __init__s   getChildrens   getColorizableTextss   setColorizableTextss   __repr__s   _get_Childrens   _get_ColorizableTextss   _set_ColorizableTexts(    (    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   StructuredTextDocument s   			(   s   res   STDOMs   strings   splits   joins   replaces
   expandtabss   strips   finds   compiles   matchs	   indentions   inserts   displays   display2s	   findlevels
   para_delims   StructuredTexts   Basics   Elements   StructuredTextParagraphs   StructuredTextDocument(   s   StructuredTextParagraphs   finds   STDOMs
   para_delims   strips   splits   inserts   StructuredTexts   res   StructuredTextDocuments   replaces
   expandtabss   displays   display2s   joins   Basics	   indentions	   findlevel(    (    se   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_0/happydoclib/docstring/StructuredText/ST.pys   ? s   .	B	P