blob: 8ae50e9baa9e4bbaa321194c870d0d8e6bf5f14f [file] [log] [blame]
// Copyright (c) 2018, 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.
class _SECRET {
/*element: _SECRET.:[exact=_SECRET]*/
const _SECRET();
/*element: _SECRET.toString:Value([exact=JSString], value: "SECRET!")*/
@override
String toString() => "SECRET!";
}
class C {
/*element: C.x:[exact=JSUInt31]*/
final int x;
/*element: C.y:Union([exact=JSString], [exact=_SECRET])*/
final y;
/*element: C.a:[exact=C]*/
C.a(int /*[exact=JSUInt31]*/ x,
[var /*Union([exact=JSString], [exact=_SECRET])*/ b = const _SECRET()])
: this.x = x,
this.y = b;
/*element: C.b:[exact=C]*/
C.b(int /*[exact=JSUInt31]*/ x,
{var /*Union([exact=JSString], [exact=_SECRET])*/ b: const _SECRET()})
: this.x = x,
this.y = b;
/*element: C.toString:[exact=JSString]*/
@override
String toString() => "C(${/*[exact=D]*/ x},${/*[exact=D]*/ y})";
}