public IEnumerable <RegexMutation> Mutate()
        {
            try
            {
                var       parser = new Parser(_pattern);
                RegexTree tree   = parser.Parse();
                _root = tree.Root;
            }

            catch (RegexParseException)
            {
                yield break;
            }

            var regexNodes = _root.GetDescendantNodes().ToList();

            regexNodes.Add(_root);

            foreach (RegexMutation mutant in regexNodes.SelectMany(node => FindMutants(node, _root)))
            {
                yield return(mutant);
            }
        }