parameters: (self, args)
return_statement: return args_split
docstring: given a string of arguments, returns a list of strings split into the
          arguments, with respecting brackets.
          args is expected to be a single line.
          Note: comments are not handled, also template arguments.
  
          e.g. "32, test(4,4), \"e(c\", ab" -> ["32", "test(4,4)", "\"e(c\"", "ab"]
docstring_summary: given a string of arguments, returns a list of strings split into the
          arguments, with respecting brackets.
          args is expected to be a single line.
          Note: comments are not handled, also template arguments.
docstring_tokens: given a string of arguments returns a list of strings split into the arguments with respecting brackets . args is expected to be a single line . Note : comments are not handled also template arguments .
function: def _parse_arguments(self, args):
          """
          given a string of arguments, returns a list of strings split into the
          arguments, with respecting brackets.
          args is expected to be a single line.
          Note: comments are not handled, also template arguments.
  
          e.g. "32, test(4,4), \"e(c\", ab" -> ["32", "test(4,4)", "\"e(c\"", "ab"]
          """
          args_split = []
          start = 0
          bracket = 0
          in_string = False
          for i in range(len(args)):
              if in_string and args[i] == "\"" and args[i-1] != "\\":
                  in_string = False
              elif not in_string and args[i] == "\"":
                  in_string = True
              if in_string:
                  continue
              if args[i] in "{([":
                  bracket += 1
              if args[i] in "})]":
                  bracket -= 1
              if bracket == 0 and args[i] == ',':
                  args_split.append(args[start:i].strip())
                  start = i + 1
          args_split.append(args[start:].strip())
          return args_split
function_tokens: def _parse_arguments ( self , args ) : args_split = [ ] start = 0 bracket = 0 in_string = False for i in range ( len ( args ) ) : if in_string and args [ i ] == "\"" and args [ i - 1 ] != "\\" : in_string = False elif not in_string and args [ i ] == "\"" : in_string = True if in_string : continue if args [ i ] in "{([" : bracket += 1 if args [ i ] in "})]" : bracket -= 1 if bracket == 0 and args [ i ] == ',' : args_split . append ( args [ start : i ] . strip ( ) ) start = i + 1 args_split . append ( args [ start : ] . strip ( ) ) return args_split