Package docutils :: Module statemachine :: Class SearchStateMachine
[show private | hide private]
[frames | no frames]

Class SearchStateMachine

   StateMachine --+
                  |
_SearchOverride --+
                  |
                 SearchStateMachine


StateMachine which uses re.search() instead of re.match().
Method Summary
    Inherited from StateMachine
  __init__(self, state_classes, initial_state, debug)
Initialize a StateMachine object; add state objects.
  abs_line_number(self)
Return line number of current line (counting from 1).
  abs_line_offset(self)
Return line offset of current line, from beginning of file.
  add_state(self, state_class)
Initialize & add a state_class (State subclass) object.
  add_states(self, state_classes)
Add state_classes (a list of State subclasses).
  at_bof(self)
Return 1 if the input is at or before beginning-of-file.
  at_eof(self)
Return 1 if the input is at or past end-of-file.
  attach_observer(self, observer)
The observer parameter is a function or bound method which takes two arguments, the source and offset of the current line.
  check_line(self, context, state, transitions)
Examine one line of input for a transition match & execute its method.
  detach_observer(self, observer)
  error(self)
Report error details.
  get_state(self, next_state)
Return current state object; set it first if next_state given.
  get_text_block(self, flush_left)
Return a contiguous block of text.
  goto_line(self, line_offset)
Jump to absolute line offset line_offset, load and return it.
  insert_input(self, input_lines, source)
  is_next_line_blank(self)
Return 1 if the next line is blank or non-existant.
  next_line(self, n)
Load self.line with the n'th next line and return it.
  notify_observers(self)
  previous_line(self, n)
Load self.line with the n'th previous line and return it.
  run(self, input_lines, input_offset, context, input_source)
Run the state machine on input_lines.
  runtime_init(self)
Initialize self.states.
  unlink(self)
Remove circular references to objects no longer required.

Generated by Epydoc 2.0 on Tue Jul 22 05:30:45 2003 http://epydoc.sf.net