| Index: pkg/dev_compiler/tool/input_sdk/lib/core/set.dart
|
| diff --git a/pkg/dev_compiler/tool/input_sdk/lib/core/set.dart b/pkg/dev_compiler/tool/input_sdk/lib/core/set.dart
|
| deleted file mode 100644
|
| index 55ad97145ba14a86c0298bee1964d1de2cbf6410..0000000000000000000000000000000000000000
|
| --- a/pkg/dev_compiler/tool/input_sdk/lib/core/set.dart
|
| +++ /dev/null
|
| @@ -1,204 +0,0 @@
|
| -// Copyright (c) 2011, 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.
|
| -
|
| -part of dart.core;
|
| -
|
| -/**
|
| - * A collection of objects in which each object can occur only once.
|
| - *
|
| - * That is, for each object of the element type, the object is either considered
|
| - * to be in the set, or to _not_ be in the set.
|
| - *
|
| - * Set implementations may consider some elements indistinguishable. These
|
| - * elements are treated as being the same for any operation on the set.
|
| - *
|
| - * The default [Set] implementation, [LinkedHashSet], considers objects
|
| - * indistinguishable if they are equal with regard to
|
| - * operator [Object.==].
|
| - *
|
| - * Iterating over elements of a set may be either unordered
|
| - * or ordered in some way. Examples:
|
| - *
|
| - * * A [HashSet] is unordered, which means that its iteration order is
|
| - * uspecified,
|
| - * * [LinkedHashSet] iterates in the insertion order of its elements, and
|
| - * * a sorted set like [SplayTreeSet] iterates the elements in sorted order.
|
| - *
|
| - * It is generally not allowed to modify the set (add or remove elements) while
|
| - * an operation on the set is being performed, for example during a call to
|
| - * [forEach] or [containsAll]. Nor is it allowed to modify the set while
|
| - * iterating either the set itself or any [Iterable] that is backed by the set,
|
| - * such as the ones returned by methods like [where] and [map].
|
| - */
|
| -abstract class Set<E> extends Iterable<E> implements EfficientLength {
|
| - /**
|
| - * Creates an empty [Set].
|
| - *
|
| - * The created [Set] is a plain [LinkedHashSet].
|
| - * As such, it considers elements that are equal (using [==]) to be
|
| - * indistinguishable, and requires them to have a compatible
|
| - * [Object.hashCode] implementation.
|
| - *
|
| - * The set is equivalent to one created by `new LinkedHashSet<E>()`.
|
| - */
|
| - factory Set() = LinkedHashSet<E>;
|
| -
|
| - /**
|
| - * Creates an empty identity [Set].
|
| - *
|
| - * The created [Set] is a [LinkedHashSet] that uses identity as equality
|
| - * relation.
|
| - *
|
| - * The set is equivalent to one created by `new LinkedHashSet<E>.identity()`.
|
| - */
|
| - factory Set.identity() = LinkedHashSet<E>.identity;
|
| -
|
| - /**
|
| - * Creates a [Set] that contains all [elements].
|
| - *
|
| - * All the [elements] should be assignable to [E].
|
| - * The `elements` iterable itself can have any type,
|
| - * so this constructor can be used to down-cast a `Set`, for example as:
|
| - *
|
| - * Set<SuperType> superSet = ...;
|
| - * Set<SubType> subSet =
|
| - * new Set<SubType>.from(superSet.where((e) => e is SubType));
|
| - *
|
| - * The created [Set] is a [LinkedHashSet]. As such, it considers elements that
|
| - * are equal (using [==]) to be indistinguishable, and requires them to
|
| - * have a compatible [Object.hashCode] implementation.
|
| - *
|
| - * The set is equivalent to one created by
|
| - * `new LinkedHashSet<E>.from(elements)`.
|
| - */
|
| - factory Set.from(Iterable<E> elements) = LinkedHashSet<E>.from;
|
| -
|
| - /**
|
| - * Provides an iterator that iterates over the elements of this set.
|
| - *
|
| - * The order of iteration is defined by the individual `Set` implementation,
|
| - * but must be consistent between changes to the set.
|
| - */
|
| - Iterator<E> get iterator;
|
| -
|
| - /**
|
| - * Returns true if [value] is in the set.
|
| - */
|
| - bool contains(Object value);
|
| -
|
| - /**
|
| - * Adds [value] to the set.
|
| - *
|
| - * Returns `true` if [value] (or an equal value) was not yet in the set.
|
| - * Otherwise returns `false` and the set is not changed.
|
| - *
|
| - * Example:
|
| - *
|
| - * var set = new Set();
|
| - * var time1 = new DateTime.fromMillisecondsSinceEpoch(0);
|
| - * var time2 = new DateTime.fromMillisecondsSinceEpoch(0);
|
| - * // time1 and time2 are equal, but not identical.
|
| - * Expect.isTrue(time1 == time2);
|
| - * Expect.isFalse(identical(time1, time2));
|
| - * set.add(time1); // => true.
|
| - * // A value equal to time2 exists already in the set, and the call to
|
| - * // add doesn't change the set.
|
| - * set.add(time2); // => false.
|
| - * Expect.isTrue(set.length == 1);
|
| - * Expect.isTrue(identical(time1, set.first));
|
| - */
|
| - bool add(E value);
|
| -
|
| - /**
|
| - * Adds all [elements] to this Set.
|
| - *
|
| - * Equivalent to adding each element in [elements] using [add],
|
| - * but some collections may be able to optimize it.
|
| - */
|
| - void addAll(Iterable<E> elements);
|
| -
|
| - /**
|
| - * Removes [value] from the set. Returns true if [value] was
|
| - * in the set. Returns false otherwise. The method has no effect
|
| - * if [value] value was not in the set.
|
| - */
|
| - bool remove(Object value);
|
| -
|
| - /**
|
| - * If an object equal to [object] is in the set, return it.
|
| - *
|
| - * Checks if there is an object in the set that is equal to [object].
|
| - * If so, that object is returned, otherwise returns null.
|
| - */
|
| - E lookup(Object object);
|
| -
|
| - /**
|
| - * Removes each element of [elements] from this set.
|
| - */
|
| - void removeAll(Iterable<Object> elements);
|
| -
|
| - /**
|
| - * Removes all elements of this set that are not elements in [elements].
|
| - *
|
| - * Checks for each element of [elements] whether there is an element in this
|
| - * set that is equal to it (according to `this.contains`), and if so, the
|
| - * equal element in this set is retained, and elements that are not equal
|
| - * to any element in `elements` are removed.
|
| - */
|
| - void retainAll(Iterable<Object> elements);
|
| -
|
| - /**
|
| - * Removes all elements of this set that satisfy [test].
|
| - */
|
| - void removeWhere(bool test(E element));
|
| -
|
| - /**
|
| - * Removes all elements of this set that fail to satisfy [test].
|
| - */
|
| - void retainWhere(bool test(E element));
|
| -
|
| - /**
|
| - * Returns whether this Set contains all the elements of [other].
|
| - */
|
| - bool containsAll(Iterable<Object> other);
|
| -
|
| - /**
|
| - * Returns a new set which is the intersection between this set and [other].
|
| - *
|
| - * That is, the returned set contains all the elements of this [Set] that
|
| - * are also elements of [other] according to `other.contains`.
|
| - */
|
| - Set<E> intersection(Set<Object> other);
|
| -
|
| - /**
|
| - * Returns a new set which contains all the elements of this set and [other].
|
| - *
|
| - * That is, the returned set contains all the elements of this [Set] and
|
| - * all the elements of [other].
|
| - */
|
| - Set<E> union(Set<E> other);
|
| -
|
| - /**
|
| - * Returns a new set with the elements of this that are not in [other].
|
| - *
|
| - * That is, the returned set contains all the elements of this [Set] that
|
| - * are not elements of [other] according to `other.contains`.
|
| - */
|
| - Set<E> difference(Set<Object> other);
|
| -
|
| - /**
|
| - * Removes all elements in the set.
|
| - */
|
| - void clear();
|
| -
|
| - /* Creates a [Set] with the same elements and behavior as this `Set`.
|
| - *
|
| - * The returned set behaves the same as this set
|
| - * with regard to adding and removing elements.
|
| - * It initially contains the same elements.
|
| - * If this set specifies an ordering of the elements,
|
| - * the returned set will have the same order.
|
| - */
|
| - Set<E> toSet();
|
| -}
|
|
|