multiply function

List<List> multiply(
  1. List<String> patterns,
  2. List<String> templates,
  3. List<List<String>>? matched
)

Implementation

List<List<dynamic>> multiply(List<String> patterns, List<String> templates,
    List<List<String>>? matched) {
  var res = <List<dynamic>>[];
  if (patterns.isEmpty) patterns = [''];
  for (var i = 0; i < templates.length; i++) {
    patterns.forEach((pattern) {
      var constant = pattern + templates[i];
      res.add([constant, (matched != null ? matched[i] : [])]);
    });
  }
  return res;
}