#NEWLINE# def _raw_parse( self ) : #NEWLINE# #INDENT# 'Parse the source to find the interesting facts about its lines.\n\n        A handful of member fields are updated.\n\n        ' #NEWLINE# if self . exclude : #NEWLINE# #INDENT# self . excluded = self . lines_matching ( self . exclude ) #NEWLINE# #UNINDENT# indent = 0 #NEWLINE# exclude_indent = 0 #NEWLINE# excluding = False #NEWLINE# prev_toktype = token . INDENT #NEWLINE# first_line = None #NEWLINE# empty = True #NEWLINE# tokgen = generate_tokens ( prev_toktype . text ) #NEWLINE# for ( toktype , ttext , ( slineno , _ ) , ( elineno , _ ) , ltext ) in tokgen : #NEWLINE# #INDENT# if self . show_tokens : #NEWLINE# #INDENT# print ( ( '%10s %5s %-20r %r' % ( tokenize . tok_name . get ( toktype , toktype ) , nice_pair ( ( slineno , elineno ) ) , ttext , ltext ) ) ) #NEWLINE# #UNINDENT# if ( toktype == token . INDENT ) : #NEWLINE# #INDENT# indent += 1 #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( toktype == token . DEDENT ) : #NEWLINE# #INDENT# indent -= 1 #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( ( toktype == token . NAME ) and ( ttext == 'class' ) ) : #NEWLINE# #INDENT# self . classdefs . add ( slineno ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( ( toktype == token . OP ) and ( ttext == ':' ) ) : #NEWLINE# #INDENT# if ( ( not excluding ) and ( elineno in self . excluded ) ) : #NEWLINE# #INDENT# exclude_indent = indent #NEWLINE# excluding = True #NEWLINE# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# if ( ( toktype == token . STRING ) and ( prev_toktype == token . INDENT ) ) : #NEWLINE# #INDENT# self . docstrings . update ( range ( slineno , ( elineno + 1 ) ) ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( toktype == token . NEWLINE ) : #NEWLINE# #INDENT# if ( ( first_line is not None ) and ( elineno != first_line ) ) : #NEWLINE# #INDENT# rng = ( first_line , elineno ) #NEWLINE# for l in range ( first_line , ( elineno + 1 ) ) : #NEWLINE# #INDENT# self . multiline [ l ] = rng #NEWLINE# #UNINDENT# #UNINDENT# first_line = None #NEWLINE# #UNINDENT# #UNINDENT# #UNINDENT# #UNINDENT# #UNINDENT# #UNINDENT# if ( ttext . strip ( ) and ( toktype != tokenize . COMMENT ) ) : #NEWLINE# #INDENT# empty = False #NEWLINE# if ( first_line is None ) : #NEWLINE# #INDENT# first_line = slineno #NEWLINE# if ( excluding and ( indent <= exclude_indent ) ) : #NEWLINE# #INDENT# excluding = False #NEWLINE# #UNINDENT# if excluding : #NEWLINE# #INDENT# self . excluded . add ( elineno ) #NEWLINE# #UNINDENT# #UNINDENT# #UNINDENT# prev_toktype = toktype #NEWLINE# #UNINDENT# if ( not empty ) : #NEWLINE# #INDENT# self . statement_starts . update ( self . byte_parser . _find_statements ( ) )