// 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. import "package:expect/expect.dart"; class io_FileSystemEntity {} class io_Directory extends io_FileSystemEntity {} class _LocalDirectory extends _LocalFileSystemEntity<_LocalDirectory, io_Directory> with ForwardingDirectory, DirectoryAddOnsMixin { noSuchMethod(invocation) => null; } abstract class _LocalFileSystemEntity extends ForwardingFileSystemEntity {} abstract class FileSystemEntity implements io_FileSystemEntity {} abstract class ForwardingFileSystemEntity implements FileSystemEntity {} mixin ForwardingDirectory on ForwardingFileSystemEntity implements Directory { get t => T; } abstract class Directory implements FileSystemEntity, io_Directory {} abstract class DirectoryAddOnsMixin implements Directory {} main() { var x = new _LocalDirectory(); Expect.equals(x.t, _LocalDirectory); }