OptionMap<T> constructor

OptionMap<T>(
  1. List<SelectOption<T>> options
)

Implementation

OptionMap(List<SelectOption<T>> options) {
  OptionMapItem<T>? previous;
  int index = 0;

  for (final option in options) {
    final item = OptionMapItem<T>(
      label: option.label,
      value: option.value,
      description: option.description,
      previous: previous,
      index: index,
    );

    if (previous != null) {
      previous.next = item;
    }

    first ??= item;
    last = item;

    _map[option.value] = item;
    index++;
    previous = item;
  }
}