Code Search for Developers
 
 
  

Errors.py from The Nebula Device at Krugle


Show Errors.py syntax highlighted

#=======================================================================
#
#   Python Lexical Analyser
#
#   Exception classes
#
#=======================================================================

import exceptions

class PlexError(exceptions.Exception):
  message = ""

class PlexTypeError(PlexError, TypeError):
  pass

class PlexValueError(PlexError, ValueError):
  pass

class InvalidRegex(PlexError):
  pass

class InvalidToken(PlexError):

  def __init__(self, token_number, message):
    PlexError.__init__(self, "Token number %d: %s" % (token_number, message))

class InvalidScanner(PlexError):
  pass

class AmbiguousAction(PlexError):
  message = "Two tokens with different actions can match the same string"

  def __init__(self):
    pass

class UnrecognizedInput(PlexError):
  scanner = None
  position = None
  state_name = None

  def __init__(self, scanner, state_name):
    self.scanner = scanner
    self.position = scanner.position()
    self.state_name = state_name

  def __str__(self):
    return ("'%s', line %d, char %d: Token not recognised in state %s"
            % (self.position + (repr(self.state_name),)))







See more files for this project here

The Nebula Device

Realtime 3D game/visualization engine, written in C++, scriptable through Tcl/Tk, Python and Lua. Supports D3D and OpenGL for rendering, runs under Linux and Windows.

Project homepage: http://sourceforge.net/projects/nebuladevice
Programming language(s): C,C++,Python
License: other

  Actions.py
  DFA.py
  Errors.py
  Lexicons.py
  Machines.py
  README
  Regexps.py
  Scanners.py
  TODO
  Timing.py
  Traditional.py
  Transitions.py
  __init__.py
  test_tm.py