size static method

int size(
  1. List elements, [
  2. int alignment = 0,
  3. bool skipLastElementPadding = false
])

Implementation

static int size(List elements, [int alignment = 0, bool skipLastElementPadding = false]) {
  if (elements.isEmpty) return 0;
  if (alignment == 0) return sum(elements.map<int>((e) => e.size).toList());

  if (!skipLastElementPadding) return sum(elements.map((e) => alignUp(e.size, alignment)).toList());

  return sum(elements.sublist(0, elements.length - 1).map((e) => alignUp(e.size, alignment)).toList()) +
      sum(elements.sublist(elements.length - 1).map<int>((e) => e.size).toList());
}