docs: def is_source_code_missing_open_brackets(source_code):
      """
      :param str source_code:
      :return: whether this source code snippet (e.g. one line) is complete/even w.r.t. opening/closing brackets
      :rtype: bool
      """
      open_brackets = "[{("
      close_brackets = "]})"
      last_close_bracket = [-1]  # stack
      counters = [0] * len(open_brackets)
      # Go in reverse order through the tokens.
      # Thus, we first should see the closing brackets, and then the matching opening brackets.
      for t_type, t_content in reversed(list(parse_py_statements(source_code))):
          if t_type != "op":
              continue  # we are from now on only interested in ops (including brackets)
          if t_content in open_brackets:
              idx = open_brackets.index(t_content)
              if last_close_bracket[-1] == idx:  # ignore if we haven't seen the closing one
                  counters[idx] -= 1
                  del last_close_bracket[-1]
          elif t_content in close_brackets:
              idx = close_brackets.index(t_content)
              counters[idx] += 1
              last_close_bracket += [idx]
      return not all([c == 0 for c in counters])