LCOV - code coverage report
Current view: top level - boolean_selector-1.0.2/lib/src - union_selector.dart (source / functions) Hit Total Coverage
Test: coverage.lcov Lines: 0 12 0.0 %
Date: 2017-10-10 20:17:03 Functions: 0 0 -

          Line data    Source code
       1             : // Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
       2             : // for details. All rights reserved. Use of this source code is governed by a
       3             : // BSD-style license that can be found in the LICENSE file.
       4             : 
       5             : import '../boolean_selector.dart';
       6             : import 'intersection_selector.dart';
       7             : 
       8             : /// A selector that matches inputs that either of its sub-selectors match.
       9             : class UnionSelector implements BooleanSelector {
      10             :   final BooleanSelector _selector1;
      11             :   final BooleanSelector _selector2;
      12             : 
      13           0 :   UnionSelector(this._selector1, this._selector2);
      14             : 
      15             :   List<String> get variables =>
      16           0 :       _selector1.variables.toList()..addAll(_selector2.variables);
      17             : 
      18             :   bool evaluate(semantics) =>
      19           0 :       _selector1.evaluate(semantics) || _selector2.evaluate(semantics);
      20             : 
      21             :   BooleanSelector intersection(BooleanSelector other) =>
      22           0 :       new IntersectionSelector(this, other);
      23             : 
      24             :   BooleanSelector union(BooleanSelector other) =>
      25           0 :       new UnionSelector(this, other);
      26             : 
      27             :   void validate(bool isDefined(String variable)) {
      28           0 :     _selector1.validate(isDefined);
      29           0 :     _selector2.validate(isDefined);
      30             :   }
      31             : 
      32           0 :   String toString() => "($_selector1) && ($_selector2)";
      33             : 
      34             :   bool operator==(other) =>
      35           0 :       other is UnionSelector &&
      36           0 :       _selector1 == other._selector1 &&
      37           0 :       _selector2 == other._selector2;
      38             : 
      39           0 :   int get hashCode => _selector1.hashCode ^ _selector2.hashCode;
      40             : }

Generated by: LCOV version 1.13