isPacked property

bool get isPacked

Whether a numeric field is repeated and must be encoded with packed encoding.

In proto3 repeated fields are encoded as packed by default. proto2 requires [packed=true] option.

Implementation

bool get isPacked {
  if (!isRepeated) {
    return false; // only repeated fields can be packed
  }

  if (!baseType.isPackable) {
    return false;
  }

  return features.repeatedFieldEncoding ==
      FeatureSet_RepeatedFieldEncoding.PACKED;
}