extractArguments function

Map<String, String> extractArguments(
  1. String source
)

Implementation

Map<String, String> extractArguments(String source) {
  final regex = RegExp(r"arguments<((?:[^<>]+|<[^<>]*>)+)>\(\s*'([^']+)'\s*\)");
  final matches = regex.allMatches(source);

  final Map<String, String> result = {};

  for (final match in matches) {
    final type = match.group(2)!; // e.g., int
    final name = match.group(1)!; // e.g., number
    result[type] = name;
  }

  return result;
}