Block constructor = definition.declareConstructor(new CompilerContext(null), a(PUBLIC))
.getBody()
.pushThis()
.invokeConstructor(AbstractGroupedAccumulatorState.class);
// Create ensureCapacity
Block ensureCapacity = definition.declareMethod(new CompilerContext(null), a(PUBLIC), "ensureCapacity", type(void.class), NamedParameterDefinition.arg("size", long.class)).getBody();
// Generate fields, constructor, and ensureCapacity
List<FieldDefinition> fieldDefinitions = new ArrayList<>();
for (StateField field : fields) {
fieldDefinitions.add(generateGroupedField(definition, constructor, ensureCapacity, field));