# Copyright (c) 2012, 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.

# This file contains all sources for the dart:async library.
{
  'sources': [
    'async.dart',
    # The above file needs to be first as it lists the parts below.
    'async_error.dart',
    'deferred_load.dart',
    'event_loop.dart',
    'future.dart',
    'future_impl.dart',
    'stream.dart',
    'stream_controller.dart',
    'stream_impl.dart',
    'stream_pipe.dart',
    'timer.dart',
    'zone.dart',
  ],
}
