Class: MetzScan::Analyzers::RepeatedBranching::BranchValue

Inherits:
Object
  • Object
show all
Defined in:
lib/metz_scan/analyzers/repeated_branching/branch_value.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(text, signature) ⇒ BranchValue

Returns a new instance of BranchValue.



18
19
20
21
# File 'lib/metz_scan/analyzers/repeated_branching/branch_value.rb', line 18

def initialize(text, signature)
  @text = text
  @signature = signature
end

Instance Attribute Details

#signatureObject (readonly)

Returns the value of attribute signature.



23
24
25
# File 'lib/metz_scan/analyzers/repeated_branching/branch_value.rb', line 23

def signature
  @signature
end

#textObject (readonly)

Returns the value of attribute text.



23
24
25
# File 'lib/metz_scan/analyzers/repeated_branching/branch_value.rb', line 23

def text
  @text
end

Class Method Details

.for(condition) ⇒ Object



7
8
9
10
11
# File 'lib/metz_scan/analyzers/repeated_branching/branch_value.rb', line 7

def self.for(condition)
  return literal(condition) if condition.respond_to?(:value)

  new(condition.source, "source:#{condition.source}")
end

.literal(condition) ⇒ Object



13
14
15
16
# File 'lib/metz_scan/analyzers/repeated_branching/branch_value.rb', line 13

def self.literal(condition)
  text = condition.type == :sym ? ":#{condition.value}" : condition.value.to_s
  new(text, "#{condition.type}:#{condition.value.inspect}")
end