docs: def get_call_exprs(self, line):
          """Gets the argument expressions from the source of a function call."""
          line = line.lstrip()
          try:
              tree = self.ast.parse(line)
          except SyntaxError:
              return None
          for node in self.ast.walk(tree):
              if isinstance(node, self.ast.Call):
                  offsets = []
                  for arg in node.args:
                      # In Python 3.4 the col_offset is calculated wrong. See
                      # https://bugs.python.org/issue21295
                      if isinstance(arg, self.ast.Attribute) and (
                              (3, 4, 0) <= self.sys.version_info <= (3, 4, 3)):
                          offsets.append(arg.col_offset - len(arg.value.id) - 1)
                      else:
                          offsets.append(arg.col_offset)
                  if node.keywords:
                      line = line[:node.keywords[0].value.col_offset]
                      line = self.re.sub(r'\w+\s*=\s*$', '', line)
                  else:
                      line = self.re.sub(r'\s*\)\s*$', '', line)
                  offsets.append(len(line))
                  args = []
                  for i in range(len(node.args)):
                      args.append(line[offsets[i]:offsets[i + 1]].rstrip(', '))
                  return args