blob: 19d30a03c42cb571d3cafd448a09d300d9240bf9 [file] [log] [blame]
# Copyright (c) 2019, 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.md file.
# Test FFI compilation. Do expression computation using a (converted to getter)
# field in the FFI-struct class.
type: newworld
worlds:
- entry: main.dart
sources:
main.dart: |
// @dart=2.9
import 'lib.dart';
Coordinate coordinate;
main() {
coordinate = new Coordinate.allocate(42.0, 42.0, null);
print(coordinate.x);
print(coordinate.y);
print(coordinate.next);
}
lib.dart: |
// @dart=2.9
import 'dart:ffi';
class Coordinate extends Struct {
@Double()
double x;
@Double()
double y;
Pointer<Coordinate> next;
factory Coordinate.allocate(double x, double y, Pointer<Coordinate> next) {
return null;
}
}
expectedLibraryCount: 2
expressionCompilation:
uri: main.dart
expression: print(coordinate.x)