'Debug helper method that returns the source code context of this node as a string.'

def dump_pos(self, mark_column=False, marker='(#)'):

    if (not self.pos):
        return u''
    (source_desc, line, col) = self.pos
    contents = source_desc.get_lines(encoding='ASCII', error_handling='ignore')
    lines = contents[max(0, (line - 3)):line]
    current = lines[(-1)]
    if mark_column:
        current = ((current[:col] + marker) + current[col:])
    lines[(-1)] = (current.rstrip() + u'                                                    #    <<<<<<<<<<<<<<\n')
    lines += contents[line:(line + 2)]
    return (u'"%s":%d:%d\n%s\n' % (source_desc.get_escaped_description(), line, col, u''.join(lines)))
