Class: Hashira::Analysis::Finding
- Inherits:
-
Data
- Object
- Data
- Hashira::Analysis::Finding
- Defined in:
- lib/hashira/analysis/finding.rb
Instance Attribute Summary collapse
-
#cycle ⇒ Object
readonly
Returns the value of attribute cycle.
-
#detail ⇒ Object
readonly
Returns the value of attribute detail.
-
#digest ⇒ Object
readonly
Returns the value of attribute digest.
-
#evidence ⇒ Object
readonly
Returns the value of attribute evidence.
-
#kind ⇒ Object
readonly
Returns the value of attribute kind.
-
#package ⇒ Object
readonly
Returns the value of attribute package.
Instance Method Summary collapse
- #identity ⇒ Object
-
#initialize(cycle: nil, digest: nil, detail: nil, **rest) ⇒ Finding
constructor
A new instance of Finding.
- #magnitude ⇒ Object
- #plain(text) ⇒ Object
- #signature ⇒ Object
- #site ⇒ Object
- #to_h ⇒ Object
- #trace ⇒ Object
Constructor Details
#initialize(cycle: nil, digest: nil, detail: nil, **rest) ⇒ Finding
Returns a new instance of Finding.
11 |
# File 'lib/hashira/analysis/finding.rb', line 11 def initialize(cycle: nil, digest: nil, detail: nil, **rest) = super |
Instance Attribute Details
#cycle ⇒ Object (readonly)
Returns the value of attribute cycle
9 10 11 |
# File 'lib/hashira/analysis/finding.rb', line 9 def cycle @cycle end |
#detail ⇒ Object (readonly)
Returns the value of attribute detail
9 10 11 |
# File 'lib/hashira/analysis/finding.rb', line 9 def detail @detail end |
#digest ⇒ Object (readonly)
Returns the value of attribute digest
9 10 11 |
# File 'lib/hashira/analysis/finding.rb', line 9 def digest @digest end |
#evidence ⇒ Object (readonly)
Returns the value of attribute evidence
9 10 11 |
# File 'lib/hashira/analysis/finding.rb', line 9 def evidence @evidence end |
#kind ⇒ Object (readonly)
Returns the value of attribute kind
9 10 11 |
# File 'lib/hashira/analysis/finding.rb', line 9 def kind @kind end |
#package ⇒ Object (readonly)
Returns the value of attribute package
9 10 11 |
# File 'lib/hashira/analysis/finding.rb', line 9 def package @package end |
Instance Method Details
#identity ⇒ Object
17 |
# File 'lib/hashira/analysis/finding.rb', line 17 def identity = digest || package |
#magnitude ⇒ Object
15 |
# File 'lib/hashira/analysis/finding.rb', line 15 def magnitude = detail.to_h[MAGNITUDES[kind]] |
#plain(text) ⇒ Object
25 |
# File 'lib/hashira/analysis/finding.rb', line 25 def plain(text) = TRACKS.reduce(text) { |left, mark| left.gsub(mark, "") } |
#signature ⇒ Object
13 |
# File 'lib/hashira/analysis/finding.rb', line 13 def signature = "#{kind}:#{identity}" |
#site ⇒ Object
23 |
# File 'lib/hashira/analysis/finding.rb', line 23 def site = detail.to_h[:site].to_s |
#to_h ⇒ Object
27 |
# File 'lib/hashira/analysis/finding.rb', line 27 def to_h = super.merge(detail: detail&.to_h).compact |
#trace ⇒ Object
19 20 21 |
# File 'lib/hashira/analysis/finding.rb', line 19 def trace "#{kind}|#{plain(site)}|#{evidence.map { plain(it) }.join(";")}" unless digest end |