operator [] method

FormattedValuePart? operator [](
  1. int index
)

Retrieves the value part at the specified index.

This indexes only the parts that can hold values (excluding static parts).

Parameters:

  • index (int, required): The zero-based index into value parts.

Returns: The FormattedValuePart at the index, or null if out of bounds.

Example:

final value = FormattedValue([
  FormattedValuePart(DigitPart(), '1'),
  FormattedValuePart(StaticPart('/'), null),
  FormattedValuePart(DigitPart(), '2'),
]);
print(value[0]?.value); // '1'
print(value[1]?.value); // '2'

Implementation

FormattedValuePart? operator [](int index) {
  int partIndex = 0;
  for (var part in parts) {
    if (part.part.canHaveValue) {
      if (partIndex == index) {
        return part;
      }
      partIndex++;
    }
  }
  return null;
}