8a2deccc9a
Reformat these packages after the language version was bumped in https://dart-review.googlesource.com/c/sdk/+/487942 TEST=ci Change-Id: I6475e4b3d096b3c1f9aded34a5736989222e1689 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/489400 Auto-Submit: Alexander Markov <alexmarkov@google.com> Commit-Queue: Chloe Stefantsova <cstefantsova@google.com> Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
52 lines
1.7 KiB
Dart
52 lines
1.7 KiB
Dart
// Copyright (c) 2025, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
import 'dart:typed_data' show Uint8List;
|
|
|
|
import 'package:dart2bytecode/bytecode_generator.dart' show generateBytecode;
|
|
import 'package:dart2bytecode/options.dart' show BytecodeOptions;
|
|
import 'package:kernel/ast.dart' show Component, Library;
|
|
import 'package:kernel/binary/ast_to_binary.dart' show BytesSink;
|
|
import 'package:kernel/class_hierarchy.dart' show ClassHierarchy;
|
|
import 'package:kernel/core_types.dart' show CoreTypes;
|
|
import 'package:kernel/target/targets.dart' show Target;
|
|
|
|
import '../../vm/bin/kernel_service.dart' as kernel_service;
|
|
|
|
Uint8List _generateBytecode(
|
|
Component component,
|
|
List<Library> libraries,
|
|
CoreTypes coreTypes,
|
|
ClassHierarchy hierarchy,
|
|
Target target,
|
|
bool enableAsserts, {
|
|
Set<Library> extraLoadedLibraries = const {},
|
|
}) {
|
|
final byteSink = new BytesSink();
|
|
generateBytecode(
|
|
component,
|
|
byteSink,
|
|
libraries: libraries,
|
|
extraLoadedLibraries: extraLoadedLibraries,
|
|
coreTypes: coreTypes,
|
|
hierarchy: hierarchy,
|
|
target: target,
|
|
options: BytecodeOptions(
|
|
enableAsserts: enableAsserts,
|
|
emitSourcePositions: true,
|
|
emitLocalVarInfo: true,
|
|
emitInstanceFieldInitializers: true,
|
|
embedSourceText: true,
|
|
),
|
|
);
|
|
return byteSink.builder.takeBytes();
|
|
}
|
|
|
|
// Wire up bytecode generator to the kernel service to avoid
|
|
// circular dependency between package:vm and package:dart2bytecode.
|
|
main([args]) {
|
|
kernel_service.bytecodeGenerator = _generateBytecode;
|
|
return kernel_service.main(args);
|
|
}
|