Class: AdLint::Cc1::NontrivialValueTest

Inherits:
ValueTest
  • Object
show all
Defined in:
lib/adlint/cc1/value.rb

Instance Attribute Summary

Attributes inherited from ValueTest

#evidence

Instance Method Summary collapse

Methods inherited from ValueTest

#false?, #true?

Constructor Details

#initialize(evid, exact) ⇒ NontrivialValueTest

Returns a new instance of NontrivialValueTest.



1907
1908
1909
1910
# File 'lib/adlint/cc1/value.rb', line 1907

def initialize(evid, exact)
  super(evid)
  @exact = exact
end

Instance Method Details

#resultObject



1912
1913
1914
1915
1916
1917
1918
1919
1920
# File 'lib/adlint/cc1/value.rb', line 1912

def result
  # NOTE: TestEvidence of an NontrivialValueTest must be a kind of
  #       NontrivialTestEvidence.
  if @exact
    !evidence.positive_contribs.empty? && evidence.negative_contribs.empty?
  else
    !evidence.positive_contribs.empty?
  end
end