6.13.10.2.11. Input functions

These are private functions used to actually perform input from the input_frame source driver.
Start python section to interscript/frames/inputf.py[16 /40 ] Next Prev Last
   472: #line 659 "input_frame.ipk"
   473:   def enqueue_input(self,file, count, line):
   474:     self.read_buffer.append((file,count,line))
   475: 
   476:   def dequeue_input(self):
   477:     data = self.read_buffer[0]
   478:     del self.read_buffer[0]
   479:     return data
   480: 
   481:   # This is the interscript version of a #line directive
   482:   def line(self, number, filename):
   483:     self.inpt.original_file = filename
   484:     self.inpt.line_offset = number - inpt.src.get_lines_read()
   485: 
   486:   def readline(self):
   487:     while 1:
   488:       if self.read_buffer:
   489:         return self.dequeue_input()
   490:       try:
   491:         line = self.source.readline()
   492:         self.real_filename = self.source.get_source_name()
   493:         self.real_count = self.source.get_lines_read()
   494:         self.original_count = self.real_count + self.line_offset
   495:         line = string.rstrip(line)
   496:         self.line = string.expandtabs(line,self.tabwidth)
   497:         return (self.original_filename,self.original_count,self.line)
   498:       except KeyboardInterrupt:
   499:         # should inhibit output for process, not globally
   500:         self.process.update_files = 0
   501:         raise KeyboardInterrupt
   502:       except eof:
   503:         if self.verbosity>=4:
   504:           print 'readline: EOF'
   505:         self.line = None
   506:         raise eoi
   507:       else:
   508:         if self.process.verbosity>=1:
   509:           print 'program error in readline:',sys.exc_info()
   510:         self.process.update_files = 0
   511: 
End python section to interscript/frames/inputf.py[16]