| // Copyright (c) 2016, 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 '../boolean_selector.dart'; |
| |
| /// A selector that matches all inputs. |
| class All implements BooleanSelector { |
| // TODO(nweiz): Stop explicitly providing a type argument when sdk#32412 is |
| // fixed. |
| @override |
| final Iterable<String> variables = const <String>[]; |
| |
| const All(); |
| |
| @override |
| bool evaluate(bool Function(String variable) semantics) => true; |
| |
| @override |
| BooleanSelector intersection(BooleanSelector other) => other; |
| |
| @override |
| BooleanSelector union(BooleanSelector other) => this; |
| |
| @override |
| void validate(bool Function(String variable) isDefined) {} |
| |
| @override |
| String toString() => '<all>'; |
| } |