tt_SWITCH function

dynamic tt_SWITCH(
  1. List values
)

tt_SWITCH(val, case1, result1, case2, result2, ..., defaultVal)

Implementation

dynamic tt_SWITCH(List<dynamic> values) {
  if (values.isEmpty) return null;
  final val = values[0];
  for (var i = 1; i + 1 < values.length; i += 2) {
    if (varToStr(values[i]) == varToStr(val)) return values[i + 1];
  }
  // if the argument count is even, the last one is the default
  if (values.length.isEven) return values.last;
  return null;
}