human
Complete this python program:
def get_block_symbol_data(editor, block):
assistant
#Here is the Python program you requested.

    """Gets the list of ParenthesisInfo for specific text block.
    :param editor: Code editor instance
    :param block: block to parse
    """
    def list_symbols(editor, block, character):
        '\n                                Retuns        a    list    of    symbols    found    in    the    block    text\n\n                                :param    editor:    code    editor    instance\n                                :param    block:    block    to    parse\n                                :param    character:    character    to    look    for.\n                                '
        text = block.text()
        symbols = []
        cursor = QTextCursor(block)
        cursor.movePosition(cursor.StartOfBlock)
        pos = text.find(character, 0)
        cursor.movePosition(cursor.Right, cursor.MoveAnchor, pos)
        while (pos != (-1)):
            if (not TextHelper(editor).is_comment_or_string(cursor)):
                info = ParenthesisInfo(pos, character)
                symbols.append(info)
            pos = text.find(character, (pos + 1))
            cursor.movePosition(cursor.StartOfBlock)
            cursor.movePosition(cursor.Right, cursor.MoveAnchor, pos)
        return symbols
    parentheses = sorted((list_symbols(editor, block, '(') + list_symbols(editor, block, ')')), key=(lambda x: x.position))
    square_brackets = sorted((list_symbols(editor, block, '[') + list_symbols(editor, block, ']')), key=(lambda x: x.position))
    braces = sorted((list_symbols(editor, block, '{') + list_symbols(editor, block, '}')), key=(lambda x: x.position))
    return (parentheses, square_brackets, braces)