Class: Mutant::Matcher::Config Private
- Inherits:
-
Object
- Object
- Mutant::Matcher::Config
- Includes:
- Unparser::Adamantium
- Defined in:
- lib/mutant/matcher/config.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Subject matcher configuration
Constant Summary collapse
- INSPECT_FORMAT =
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.
"#<#{self} %s>"
- ATTRIBUTE_DELIMITER =
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.
' '
- ATTRIBUTE_FORMAT =
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.
'%s: [%s]'
- ENUM_DELIMITER =
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_ATTRIBUTES =
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'
- PRESENTATIONS =
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.
{ ignore: :syntax, start_expressions: :syntax, subject_filters: :inspect, subjects: :syntax }.freeze
- DEFAULT =
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.
new(anima.attribute_names.to_h { |name| [name, []] })
- LOADER =
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.
Transform::Sequence.new( [ Transform::Hash.new( optional: [ Transform::Hash::Key.new('subjects', expression_array), Transform::Hash::Key.new('ignore', expression_array) ], required: [] ), Transform::Hash::Symbolize.new, ->(attributes) { Either::Right.new(DEFAULT.with(attributes)) } ] )
Instance Method Summary collapse
-
#add(attribute, value) ⇒ Config
private
Add value to configurable collection.
-
#inspect ⇒ String
private
Inspection string.
-
#merge(other) ⇒ Config
private
Merge with other config.
Instance Method Details
#add(attribute, value) ⇒ Config
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.
Add value to configurable collection
65 66 67 |
# File 'lib/mutant/matcher/config.rb', line 65 def add(attribute, value) with(attribute => public_send(attribute) + [value]) end |
#inspect ⇒ String
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.
Inspection string
54 55 56 |
# File 'lib/mutant/matcher/config.rb', line 54 def inspect INSPECT_FORMAT % inspect_attributes end |
#merge(other) ⇒ Config
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.
Merge with other config
74 75 76 77 78 79 |
# File 'lib/mutant/matcher/config.rb', line 74 def merge(other) self.class.new( to_h .to_h { |name, value| [name, value + other.public_send(name)] } ) end |