Module: Mutant Private
- Defined in:
- lib/mutant.rb,
lib/mutant/ast.rb,
lib/mutant/cli.rb,
lib/mutant/env.rb,
lib/mutant/meta.rb,
lib/mutant/test.rb,
lib/mutant/util.rb,
lib/mutant/hooks.rb,
lib/mutant/range.rb,
lib/mutant/scope.rb,
lib/mutant/timer.rb,
lib/mutant/usage.rb,
lib/mutant/world.rb,
lib/mutant/config.rb,
lib/mutant/loader.rb,
lib/mutant/parser.rb,
lib/mutant/procto.rb,
lib/mutant/result.rb,
lib/mutant/context.rb,
lib/mutant/matcher.rb,
lib/mutant/mutator.rb,
lib/mutant/segment.rb,
lib/mutant/subject.rb,
lib/mutant/version.rb,
lib/mutant/ast/meta.rb,
lib/mutant/ast/sexp.rb,
lib/mutant/mutation.rb,
lib/mutant/parallel.rb,
lib/mutant/registry.rb,
lib/mutant/reporter.rb,
lib/mutant/selector.rb,
lib/mutant/variable.rb,
lib/mutant/ast/nodes.rb,
lib/mutant/ast/types.rb,
lib/mutant/bootstrap.rb,
lib/mutant/isolation.rb,
lib/mutant/transform.rb,
lib/mutant/zombifier.rb,
lib/mutant/expression.rb,
lib/mutant/repository.rb,
lib/mutant/ast/pattern.rb,
lib/mutant/cli/command.rb,
lib/mutant/integration.rb,
lib/mutant/result/test.rb,
lib/mutant/test/runner.rb,
lib/mutant/matcher/null.rb,
lib/mutant/meta/example.rb,
lib/mutant/mutator/node.rb,
lib/mutant/mutator/util.rb,
lib/mutant/reporter/cli.rb,
lib/mutant/ast/meta/send.rb,
lib/mutant/ast/structure.rb,
lib/mutant/matcher/chain.rb,
lib/mutant/matcher/scope.rb,
lib/mutant/parallel/pipe.rb,
lib/mutant/reporter/null.rb,
lib/mutant/selector/null.rb,
lib/mutant/ast/meta/const.rb,
lib/mutant/isolation/fork.rb,
lib/mutant/isolation/none.rb,
lib/mutant/matcher/config.rb,
lib/mutant/matcher/filter.rb,
lib/mutant/matcher/method.rb,
lib/mutant/matcher/static.rb,
lib/mutant/mutator/regexp.rb,
lib/mutant/result/session.rb,
lib/mutant/subject/config.rb,
lib/mutant/subject/method.rb,
lib/mutant/transform/json.rb,
lib/mutant/ast/meta/optarg.rb,
lib/mutant/ast/meta/symbol.rb,
lib/mutant/matcher/methods.rb,
lib/mutant/mutation/config.rb,
lib/mutant/mutation/runner.rb,
lib/mutant/mutator/node/if.rb,
lib/mutant/parallel/driver.rb,
lib/mutant/parallel/source.rb,
lib/mutant/parallel/worker.rb,
lib/mutant/repository/diff.rb,
lib/mutant/ast/meta/resbody.rb,
lib/mutant/cli/command/root.rb,
lib/mutant/cli/command/util.rb,
lib/mutant/integration/null.rb,
lib/mutant/meta/example/dsl.rb,
lib/mutant/require_highjack.rb,
lib/mutant/result/exception.rb,
lib/mutant/segment/recorder.rb,
lib/mutant/test/runner/sink.rb,
lib/mutant/ast/pattern/lexer.rb,
lib/mutant/ast/pattern/token.rb,
lib/mutant/expression/method.rb,
lib/mutant/expression/parser.rb,
lib/mutant/expression/source.rb,
lib/mutant/matcher/namespace.rb,
lib/mutant/mutator/node/case.rb,
lib/mutant/mutator/node/mlhs.rb,
lib/mutant/mutator/node/next.rb,
lib/mutant/mutator/node/noop.rb,
lib/mutant/mutator/node/send.rb,
lib/mutant/mutator/node/when.rb,
lib/mutant/reporter/sequence.rb,
lib/mutant/ast/named_children.rb,
lib/mutant/ast/pattern/parser.rb,
lib/mutant/ast/pattern/source.rb,
lib/mutant/expression/methods.rb,
lib/mutant/mutation/operators.rb,
lib/mutant/mutator/node/begin.rb,
lib/mutant/mutator/node/block.rb,
lib/mutant/mutator/node/break.rb,
lib/mutant/mutator/node/class.rb,
lib/mutant/mutator/node/const.rb,
lib/mutant/mutator/node/guard.rb,
lib/mutant/mutator/node/index.rb,
lib/mutant/mutator/node/masgn.rb,
lib/mutant/mutator/node/splat.rb,
lib/mutant/mutator/node/super.rb,
lib/mutant/mutator/node/yield.rb,
lib/mutant/mutator/util/array.rb,
lib/mutant/result/json_writer.rb,
lib/mutant/ast/node_predicates.rb,
lib/mutant/cli/command/session.rb,
lib/mutant/isolation/exception.rb,
lib/mutant/matcher/descendants.rb,
lib/mutant/mutator/node/binary.rb,
lib/mutant/mutator/node/define.rb,
lib/mutant/mutator/node/ensure.rb,
lib/mutant/mutator/node/kwargs.rb,
lib/mutant/mutator/node/module.rb,
lib/mutant/mutator/node/nthref.rb,
lib/mutant/mutator/node/regopt.rb,
lib/mutant/mutator/node/rescue.rb,
lib/mutant/mutator/node/return.rb,
lib/mutant/mutator/node/sclass.rb,
lib/mutant/mutator/node/zsuper.rb,
lib/mutant/mutator/util/symbol.rb,
lib/mutant/parallel/connection.rb,
lib/mutant/reporter/cli/format.rb,
lib/mutant/selector/expression.rb,
lib/mutant/expression/namespace.rb,
lib/mutant/mutation/runner/sink.rb,
lib/mutant/mutator/node/defined.rb,
lib/mutant/mutator/node/generic.rb,
lib/mutant/mutator/node/kwbegin.rb,
lib/mutant/mutator/node/literal.rb,
lib/mutant/mutator/node/op_asgn.rb,
lib/mutant/mutator/node/or_asgn.rb,
lib/mutant/mutator/node/resbody.rb,
lib/mutant/reporter/cli/printer.rb,
lib/mutant/mutator/node/and_asgn.rb,
lib/mutant/mutator/node/argument.rb,
lib/mutant/mutator/node/numblock.rb,
lib/mutant/result/process_status.rb,
lib/mutant/expression/descendants.rb,
lib/mutant/mutator/node/arguments.rb,
lib/mutant/mutator/node/match_alt.rb,
lib/mutant/repository/diff/ranges.rb,
lib/mutant/cli/command/environment.rb,
lib/mutant/matcher/method/instance.rb,
lib/mutant/mutator/node/block_pass.rb,
lib/mutant/mutator/node/case_match.rb,
lib/mutant/mutator/node/in_pattern.rb,
lib/mutant/subject/method/instance.rb,
lib/mutant/config/coverage_criteria.rb,
lib/mutant/matcher/method/metaclass.rb,
lib/mutant/matcher/method/singleton.rb,
lib/mutant/mutator/node/literal/nil.rb,
lib/mutant/mutator/node/send/binary.rb,
lib/mutant/reporter/cli/printer/env.rb,
lib/mutant/subject/method/metaclass.rb,
lib/mutant/subject/method/singleton.rb,
lib/mutant/meta/example/verification.rb,
lib/mutant/mutator/node/literal/hash.rb,
lib/mutant/mutator/node/procarg_zero.rb,
lib/mutant/reporter/cli/printer/test.rb,
lib/mutant/reporter/cli/progress_bar.rb,
lib/mutant/mutator/node/const_pattern.rb,
lib/mutant/mutator/node/literal/array.rb,
lib/mutant/mutator/node/literal/float.rb,
lib/mutant/mutator/node/literal/range.rb,
lib/mutant/mutator/node/literal/regex.rb,
lib/mutant/cli/command/environment/irb.rb,
lib/mutant/cli/command/environment/run.rb,
lib/mutant/mutator/node/literal/string.rb,
lib/mutant/mutator/node/literal/symbol.rb,
lib/mutant/reporter/cli/printer/config.rb,
lib/mutant/cli/command/environment/show.rb,
lib/mutant/cli/command/environment/test.rb,
lib/mutant/mutator/node/dynamic_literal.rb,
lib/mutant/mutator/node/literal/boolean.rb,
lib/mutant/mutator/node/literal/complex.rb,
lib/mutant/mutator/node/literal/integer.rb,
lib/mutant/mutator/node/match_pattern_p.rb,
lib/mutant/ast/find_metaclass_containing.rb,
lib/mutant/mutator/node/conditional_loop.rb,
lib/mutant/mutator/node/literal/rational.rb,
lib/mutant/mutator/node/send/conditional.rb,
lib/mutant/reporter/cli/printer/mutation.rb,
lib/mutant/cli/command/environment/subject.rb,
lib/mutant/mutator/node/match_current_line.rb,
lib/mutant/mutator/node/named_value/access.rb,
lib/mutant/reporter/cli/printer/env_result.rb,
lib/mutant/reporter/cli/printer/env_progress.rb,
lib/mutant/reporter/cli/printer/alive_results.rb,
lib/mutant/reporter/cli/printer/subject_result.rb,
lib/mutant/reporter/cli/printer/isolation_result.rb,
lib/mutant/mutator/node/send/attribute_assignment.rb,
lib/mutant/reporter/cli/printer/status_progressive.rb,
lib/mutant/mutator/node/named_value/constant_assignment.rb,
lib/mutant/mutator/node/named_value/variable_assignment.rb
Overview
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
Library namespace
rubocop:disable Metrics/ModuleLength
Defined Under Namespace
Modules: Bootstrap, CLI, Meta, Parallel, Procto, Range, Repository, RequireHighjack, Result, Util Classes: AST, Config, Context, Env, Expression, Hooks, Integration, Isolation, Loader, Matcher, Mutation, Mutator, Parser, Registry, Reporter, Scope, Segment, Selector, Subject, Test, Timer, Transform, Usage, Variable, World, Zombifier
Constant Summary collapse
- AbstractType =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Unparser::AbstractType
- Adamantium =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Unparser::Adamantium
- Anima =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Unparser::Anima
- Either =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Unparser::Either
- Equalizer =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Unparser::Equalizer
- EMPTY_STRING =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
''- EMPTY_ARRAY =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
[].freeze
- EMPTY_HASH =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
{}.freeze
- SCOPE_OPERATOR =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
'::'- ENV_VARIABLE_KEY_VALUE_REGEXP =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
/\A(?<key>#{env_key}+)=(?<value>.*)\z/- ENV_VARIABLE_KEY_REGEXP =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
/\A#{env_key}\z/- WORLD =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
World.new( condition_variable: ConditionVariable, environment_variables: ENV, gem: Gem, gem_method: method(:gem), io: IO, json: JSON, kernel: Kernel, load_path: $LOAD_PATH, marshal: Marshal, mutex: Mutex, object_space: ObjectSpace, open3: Open3, pathname: Pathname, process: Process, random: Random, recorder:, stderr: $stderr, stdout: $stdout, tempfile: Tempfile, thread: Thread, time: Time, timer: )
- SESSION_ID =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
UUIDv7 identifying this mutant process invocation. Used as the JSON result filename and session identifier.
SecureRandom.uuid_v7
- VERSION =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Current mutant version
Pathname .new(__dir__) .parent .parent .join('VERSION') .read .chomp .freeze
Class Method Summary collapse
-
.traverse(action, values) ⇒ Object
private
Traverse values against action.
Class Method Details
.traverse(action, values) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Traverse values against action
Specialized to Either. Its always traverse.
387 388 389 390 391 392 393 394 395 |
# File 'lib/mutant.rb', line 387 def self.traverse(action, values) Either::Right.new( values.map do |value| action.call(value).from_right do |error| return Either::Left.new(error) end end ) end |