'supported attributes by name are:
- lineno - returns the line number of the exception text
- col - returns the column number of the exception text
- line - returns the line containing the exception text'

def __getattr__(self, aname):

    if (aname == 'lineno'):
        return lineno(self.loc, self.pstr)
    elif (aname in ('col', 'column')):
        return col(self.loc, self.pstr)
    elif (aname == 'line'):
        return line(self.loc, self.pstr)
    else:
        raise AttributeError, aname
