list<T extends Object> static method

MixProtocolValueCodec<List<T>> list<T extends Object>(
  1. MixProtocolValueCodec<T> item, {
  2. bool nonEmpty = false,
})

JSON list whose entries use item.

Implementation

static MixProtocolValueCodec<List<T>> list<T extends Object>(
  MixProtocolValueCodec<T> item, {
  bool nonEmpty = false,
}) {
  var schema = Ack.list(item._schema);
  if (nonEmpty) schema = schema.nonEmpty();

  return MixProtocolValueCodec._(
    schema as AckSchema<Object, List<T>>,
    listEntryPaths: [
      const [],
      for (final path in item._listEntryPaths) ['*', ...path],
    ],
  );
}