Class: Lrama::Counterexamples::Derivation

Inherits:
Object
  • Object
show all
Defined in:
lib/lrama/counterexamples/derivation.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(item, left, right = nil) ⇒ Derivation

Returns a new instance of Derivation.



9
10
11
12
13
# File 'lib/lrama/counterexamples/derivation.rb', line 9

def initialize(item, left, right = nil)
  @item = item
  @left = left
  @right = right
end

Instance Attribute Details

#itemObject (readonly)

Returns the value of attribute item.



6
7
8
# File 'lib/lrama/counterexamples/derivation.rb', line 6

def item
  @item
end

#leftObject (readonly)

Returns the value of attribute left.



6
7
8
# File 'lib/lrama/counterexamples/derivation.rb', line 6

def left
  @left
end

#rightObject

Returns the value of attribute right.



6
7
8
# File 'lib/lrama/counterexamples/derivation.rb', line 6

def right
  @right
end

Instance Method Details

#render_for_reportObject



26
27
28
# File 'lib/lrama/counterexamples/derivation.rb', line 26

def render_for_report
  render_strings_for_report.join("\n")
end

#render_strings_for_reportObject



20
21
22
23
24
# File 'lib/lrama/counterexamples/derivation.rb', line 20

def render_strings_for_report
  result = [] #: Array[String]
  _render_for_report(self, 0, result, 0)
  result.map(&:rstrip)
end

#to_sObject Also known as: inspect



15
16
17
# File 'lib/lrama/counterexamples/derivation.rb', line 15

def to_s
  "#<Derivation(#{item.display_name})>"
end