visitListExpr method

  1. @override
Uint8List visitListExpr(
  1. ListExpr expr
)
override

Implementation

@override
Uint8List visitListExpr(ListExpr expr) {
  final bytesBuilder = BytesBuilder();
  bytesBuilder.addByte(HTOpCode.local);
  bytesBuilder.addByte(HTValueTypeCode.list);
  bytesBuilder.add(_uint16(expr.list.length));
  for (final item in expr.list) {
    if (item is! SpreadExpr) {
      bytesBuilder.addByte(0); // bool: isSpread
    }
    final bytes = compileAST(item, endOfExec: true);
    bytesBuilder.add(bytes);
  }
  return bytesBuilder.toBytes();
}