parameters: (self, fn_to_add_socket=None,
                   fn_to_remove_socket=None,
                   fn_to_add_timeout=None)
docstring: Constructor for IRC objects.
  
          Optional arguments are fn_to_add_socket, fn_to_remove_socket
          and fn_to_add_timeout.  The first two specify functions that
          will be called with a socket object as argument when the IRC
          object wants to be notified (or stop being notified) of data
          coming on a new socket.  When new data arrives, the method
          process_data should be called.  Similarly, fn_to_add_timeout
          is called with a number of seconds (a floating point number)
          as first argument when the IRC object wants to receive a
          notification (by calling the process_timeout method).  So, if
          e.g. the argument is 42.17, the object wants the
          process_timeout method to be called after 42 seconds and 170
          milliseconds.
  
          The three arguments mainly exist to be able to use an external
          main loop (for example Tkinter's or PyGTK's main app loop)
          instead of calling the process_forever method.
  
          An alternative is to just call ServerConnection.process_once()
          once in a while.
docstring_summary: Constructor for IRC objects.
docstring_tokens: Constructor for IRC objects .
function: def __init__(self, fn_to_add_socket=None,
                   fn_to_remove_socket=None,
                   fn_to_add_timeout=None):
          """Constructor for IRC objects.
  
          Optional arguments are fn_to_add_socket, fn_to_remove_socket
          and fn_to_add_timeout.  The first two specify functions that
          will be called with a socket object as argument when the IRC
          object wants to be notified (or stop being notified) of data
          coming on a new socket.  When new data arrives, the method
          process_data should be called.  Similarly, fn_to_add_timeout
          is called with a number of seconds (a floating point number)
          as first argument when the IRC object wants to receive a
          notification (by calling the process_timeout method).  So, if
          e.g. the argument is 42.17, the object wants the
          process_timeout method to be called after 42 seconds and 170
          milliseconds.
  
          The three arguments mainly exist to be able to use an external
          main loop (for example Tkinter's or PyGTK's main app loop)
          instead of calling the process_forever method.
  
          An alternative is to just call ServerConnection.process_once()
          once in a while.
          """
  
          if fn_to_add_socket and fn_to_remove_socket:
              self.fn_to_add_socket = fn_to_add_socket
              self.fn_to_remove_socket = fn_to_remove_socket
          else:
              self.fn_to_add_socket = None
              self.fn_to_remove_socket = None
  
          self.fn_to_add_timeout = fn_to_add_timeout
          self.connections = []
          self.handlers = {}
          self.delayed_commands = [] # list of tuples in the format (time, function, arguments)
  
          self.add_global_handler("ping", _ping_ponger, -42)
function_tokens: def __init__ ( self , fn_to_add_socket = None , fn_to_remove_socket = None , fn_to_add_timeout = None ) : if fn_to_add_socket and fn_to_remove_socket : self . fn_to_add_socket = fn_to_add_socket self . fn_to_remove_socket = fn_to_remove_socket else : self . fn_to_add_socket = None self . fn_to_remove_socket = None self . fn_to_add_timeout = fn_to_add_timeout self . connections = [ ] self . handlers = { } self . delayed_commands = [ ] # list of tuples in the format (time, function, arguments) self . add_global_handler ( "ping" , _ping_ponger , - 42 )