text: 'use strict';
  
  Object.defineProperty(exports, "__esModule", {
      value: true
  });
  
  var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
  
  var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
  
  var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
  
  var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
  
  var _createClass2 = require('babel-runtime/helpers/createClass');
  
  var _createClass3 = _interopRequireDefault(_createClass2);
  
  var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
  
  var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
  
  var _inherits2 = require('babel-runtime/helpers/inherits');
  
  var _inherits3 = _interopRequireDefault(_inherits2);
  
  var _strict = require('./strict');
  
  var _strict2 = _interopRequireDefault(_strict);
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  var RegexMatcher = function (_StrictMatcher) {
      (0, _inherits3.default)(RegexMatcher, _StrictMatcher);
  
      function RegexMatcher(expected) {
          (0, _classCallCheck3.default)(this, RegexMatcher);
          return (0, _possibleConstructorReturn3.default)(this, (RegexMatcher.__proto__ || (0, _getPrototypeOf2.default)(RegexMatcher)).call(this, new RegExp(expected)));
      }
  
      (0, _createClass3.default)(RegexMatcher, [{
          key: 'match',
          value: function match(actual) {
  
              var match = this.expected.test(actual);
  
              var expected = match ? actual : String(this.expected);
  
              return {
                  match: match,
                  actual: actual,
                  expected: expected
              };
          }
      }]);
      return RegexMatcher;
  }(_strict2.default);
  
  exports.default = RegexMatcher;
  module.exports = exports['default'];