enumAllConstants function

List<String> enumAllConstants(
  1. List<List<String>> constantRules
)

Implementation

List<String> enumAllConstants(List<List<String>> constantRules) {
  if (constantRules.isEmpty) return <String>[];
  var res = constantRules.reduce((value, element) {
    if (value.isEmpty) {
      return element;
    } else if (element.isEmpty) {
      return value;
    } else {
      return value
          .expand<String>((innerValue) =>
              element.map<String>((innerElement) => innerValue + innerElement))
          .toList();
    }
  });
  return res;
}