parameters: (self, count=1, trace=1, countfuncs=0, countcallers=0,
                   ignoremods=(), ignoredirs=(), infile=None, outfile=None,
                   timing=False)
docstring: @param count true iff it should count number of times each
                       line is executed
          @param trace true iff it should print out each line that is
                       being counted
          @param countfuncs true iff it should just output a list of
                       (filename, modulename, funcname,) for functions
                       that were called at least once;  This overrides
                       `count' and `trace'
          @param ignoremods a list of the names of modules to ignore
          @param ignoredirs a list of the names of directories to ignore
                       all of the (recursive) contents of
          @param infile file from which to read stored counts to be
                       added into the results
          @param outfile file in which to write the results
          @param timing true iff timing information be displayed
function: def __init__(self, count=1, trace=1, countfuncs=0, countcallers=0,
                   ignoremods=(), ignoredirs=(), infile=None, outfile=None,
                   timing=False):
          """
          @param count true iff it should count number of times each
                       line is executed
          @param trace true iff it should print out each line that is
                       being counted
          @param countfuncs true iff it should just output a list of
                       (filename, modulename, funcname,) for functions
                       that were called at least once;  This overrides
                       `count' and `trace'
          @param ignoremods a list of the names of modules to ignore
          @param ignoredirs a list of the names of directories to ignore
                       all of the (recursive) contents of
          @param infile file from which to read stored counts to be
                       added into the results
          @param outfile file in which to write the results
          @param timing true iff timing information be displayed
          """
          self.infile = infile
          self.outfile = outfile
          self.ignore = _Ignore(ignoremods, ignoredirs)
          self.counts = {}   # keys are (filename, linenumber)
          self.pathtobasename = {} # for memoizing os.path.basename
          self.donothing = 0
          self.trace = trace
          self._calledfuncs = {}
          self._callers = {}
          self._caller_cache = {}
          self.start_time = None
          if timing:
              self.start_time = _time()
          if countcallers:
              self.globaltrace = self.globaltrace_trackcallers
          elif countfuncs:
              self.globaltrace = self.globaltrace_countfuncs
          elif trace and count:
              self.globaltrace = self.globaltrace_lt
              self.localtrace = self.localtrace_trace_and_count
          elif trace:
              self.globaltrace = self.globaltrace_lt
              self.localtrace = self.localtrace_trace
          elif count:
              self.globaltrace = self.globaltrace_lt
              self.localtrace = self.localtrace_count
          else:
              # Ahem -- do nothing?  Okay.
              self.donothing = 1
function_tokens: def __init__ ( self , count = 1 , trace = 1 , countfuncs = 0 , countcallers = 0 , ignoremods = ( ) , ignoredirs = ( ) , infile = None , outfile = None , timing = False ) : self . infile = infile self . outfile = outfile self . ignore = _Ignore ( ignoremods , ignoredirs ) self . counts = { } # keys are (filename, linenumber) self . pathtobasename = { } # for memoizing os.path.basename self . donothing = 0 self . trace = trace self . _calledfuncs = { } self . _callers = { } self . _caller_cache = { } self . start_time = None if timing : self . start_time = _time ( ) if countcallers : self . globaltrace = self . globaltrace_trackcallers elif countfuncs : self . globaltrace = self . globaltrace_countfuncs elif trace and count : self . globaltrace = self . globaltrace_lt self . localtrace = self . localtrace_trace_and_count elif trace : self . globaltrace = self . globaltrace_lt self . localtrace = self . localtrace_trace elif count : self . globaltrace = self . globaltrace_lt self . localtrace = self . localtrace_count else : # Ahem -- do nothing?  Okay. self . donothing = 1