def args(self, decl_string):
args_begin = decl_string.find(self.__begin)<EOL>args_end = decl_string.rfind(self.__end)<EOL>if -<NUM_LIT:1> in (args_begin, args_end) or args_begin == args_end:<EOL><INDENT>raise RuntimeError(<EOL>"<STR_LIT>" %<EOL>decl_string)<EOL><DEDENT>args_only = decl_string[args_begin + <NUM_LIT:1>: args_end].strip()<EOL>args = []<EOL>parentheses_blocks = []<EOL>prev_span = <NUM_LIT:0><EOL>if self.__begin == "<STR_LIT:<>":<EOL><INDENT>regex = re.compile("<STR_LIT>")<EOL>for m in regex.finditer(args_only):<EOL><INDENT>parentheses_blocks.append([m.start() - prev_span, m.group()])<EOL>prev_span = m.end() - m.start()<EOL>args_only = args_only.replace(m.group(), "<STR_LIT>")<EOL><DEDENT><DEDENT>previous_found, found = <NUM_LIT:0>, <NUM_LIT:0><EOL>while True:<EOL><INDENT>found = self.__find_args_separator(args_only, previous_found)<EOL>if found == -<NUM_LIT:1>:<EOL><INDENT>args.append(args_only[previous_found:].strip())<EOL>break<EOL><DEDENT>else:<EOL><INDENT>args.append(args_only[previous_found: found].strip())<EOL><DEDENT>previous_found = found + <NUM_LIT:1>  <EOL><DEDENT>absolute_pos_list = []<EOL>absolute_pos = <NUM_LIT:0><EOL>for arg in args:<EOL><INDENT>absolute_pos += len(arg)<EOL>absolute_pos_list.append(absolute_pos)<EOL><DEDENT>for item in parentheses_blocks:<EOL><INDENT>parentheses_block_absolute_pos = item[<NUM_LIT:0>]<EOL>parentheses_block_string = item[<NUM_LIT:1>]<EOL>current_arg_absolute_pos = <NUM_LIT:0><EOL>for arg_index, arg_absolute_pos in enumerate(absolute_pos_list):<EOL><INDENT>current_arg_absolute_pos += arg_absolute_pos<EOL>if current_arg_absolute_pos >= parentheses_block_absolute_pos:<EOL><INDENT>args[arg_index] += parentheses_block_string<EOL>break<EOL><DEDENT><DEDENT><DEDENT>return args<EOL>
Extracts a list of arguments from the provided declaration string.

Implementation detail. Example usages:
Input: myClass<std::vector<int>, std::vector<double>>
Output: [std::vector<int>, std::vector<double>]

Args:
   decl_string (str): the full declaration string

Returns:
    list: list of arguments as strings