Files
sdk/tests/lib/js/js_annotation_static_test.dart
T
Robert Nystrom 2f2bdc3c22 Reformat tests/lib/js and /js_interop_unsafe using 3.8 style.
Change-Id: I182e28a3c4b44dd899e5ea30ac5c5c3ba60fd6cc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425333
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
2025-04-29 21:21:29 -07:00

43 lines
1.2 KiB
Dart

// Copyright (c) 2020, 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.
// Tests static errors for incorrect JS annotations.
@JS()
library js_annotation_static_test;
import 'package:js/js.dart';
class Foo {
@JS()
external Foo(int bar);
// ^
// [web] Member has a JS interop annotation but the enclosing class does not.
@JS()
external factory Foo.fooFactory();
// ^
// [web] Member has a JS interop annotation but the enclosing class does not.
@JS()
external int get bar;
// ^
// [web] Member has a JS interop annotation but the enclosing class does not.
@JS()
external set bar(int val);
// ^
// [web] Member has a JS interop annotation but the enclosing class does not.
@JS()
external int baz();
// ^
// [web] Member has a JS interop annotation but the enclosing class does not.
@JS()
external static int bazStatic();
// ^
// [web] Member has a JS interop annotation but the enclosing class does not.
}
@JS()
external int qux();
main() {}