3abf78212c
Add dart2bytecode tool which takes Dart sources and produces Dart bytecode. The tool uses common front-end (CFE) to parse Dart source code and contains bytecode generator which translates kernel AST to bytecode. Change-Id: I90bd6e72c619cf0edc556da0640760b30e81091d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/378560 Commit-Queue: Alexander Markov <alexmarkov@google.com> Reviewed-by: Slava Egorov <vegorov@google.com>
29 lines
690 B
Dart
29 lines
690 B
Dart
// Copyright (c) 2024, 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.
|
|
|
|
void foo1(x, [a = 'default_a', b = 'default_b']) {
|
|
print('x = $x');
|
|
print('a = $a');
|
|
print('b = $b');
|
|
}
|
|
|
|
void foo2(y, z, {c = 'default_c', a = 42, b = const ['default_b']}) {
|
|
print('y = $y');
|
|
print('z = $z');
|
|
print('a = $a');
|
|
print('b = $b');
|
|
print('c = $c');
|
|
}
|
|
|
|
void foo3<P, Q>(z, y, {bool a = false, required Map<P, Q> b}) {
|
|
print(P);
|
|
print(y);
|
|
print(b);
|
|
}
|
|
|
|
main() {
|
|
foo1('fixed_x', 'concrete_a');
|
|
foo2('fixed_y', 'fixed_z', a: 'concrete_a');
|
|
}
|