Class: Moult::Confidence::Rules::Rule

Inherits:
Struct
  • Object
show all
Defined in:
lib/moult/confidence/rules.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#appliesObject (readonly)

ctx -> Boolean



20
21
22
23
24
25
26
27
28
# File 'lib/moult/confidence/rules.rb', line 20

Rule = Struct.new(:name, :applies, :delta, :cap, :detail) do
  def applies?(ctx)
    applies.call(ctx)
  end

  def detail_for(ctx)
    detail.respond_to?(:call) ? detail.call(ctx) : detail
  end
end

#detailObject (readonly)

human-readable reason (Proc gets ctx)



20
21
22
23
24
25
26
27
28
# File 'lib/moult/confidence/rules.rb', line 20

Rule = Struct.new(:name, :applies, :delta, :cap, :detail) do
  def applies?(ctx)
    applies.call(ctx)
  end

  def detail_for(ctx)
    detail.respond_to?(:call) ? detail.call(ctx) : detail
  end
end

#nameObject

Returns the value of attribute name

Returns:

  • (Object)

    the current value of name



20
21
22
# File 'lib/moult/confidence/rules.rb', line 20

def name
  @name
end

Instance Method Details

#applies?(ctx) ⇒ Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/moult/confidence/rules.rb', line 21

def applies?(ctx)
  applies.call(ctx)
end

#cap=(value) ⇒ Object

optional upper bound on final confidence



20
21
22
23
24
25
26
27
28
# File 'lib/moult/confidence/rules.rb', line 20

Rule = Struct.new(:name, :applies, :delta, :cap, :detail) do
  def applies?(ctx)
    applies.call(ctx)
  end

  def detail_for(ctx)
    detail.respond_to?(:call) ? detail.call(ctx) : detail
  end
end

#delta=(value) ⇒ Object

signed adjustment when it applies



20
21
22
23
24
25
26
27
28
# File 'lib/moult/confidence/rules.rb', line 20

Rule = Struct.new(:name, :applies, :delta, :cap, :detail) do
  def applies?(ctx)
    applies.call(ctx)
  end

  def detail_for(ctx)
    detail.respond_to?(:call) ? detail.call(ctx) : detail
  end
end

#detail_for(ctx) ⇒ Object



25
26
27
# File 'lib/moult/confidence/rules.rb', line 25

def detail_for(ctx)
  detail.respond_to?(:call) ? detail.call(ctx) : detail
end