getArgs static method

List<String> getArgs(
  1. String text
)

The distinct ${...} argument names in text, in order.

Implementation

static List<String> getArgs(String text) {
  final args = <String>[];
  var i = text.indexOf(r'${');
  while (i != -1) {
    final j = text.indexOf('}', i);
    if (j == -1) break; // unterminated ${...}
    final arg = text.substring(i + 2, j);
    if (!args.contains(arg)) args.add(arg);
    i = text.indexOf(r'${', j + 1);
  }
  return args;
}