Class: Musa::Markov::Markov
- Inherits:
-
Object
- Object
- Musa::Markov::Markov
- Defined in:
- lib/musa-dsl/generative/markov.rb
Instance Attribute Summary collapse
-
#finish ⇒ Object
Returns the value of attribute finish.
-
#random ⇒ Object
Returns the value of attribute random.
-
#start ⇒ Object
Returns the value of attribute start.
-
#transitions ⇒ Object
Returns the value of attribute transitions.
Instance Method Summary collapse
- #infinite? ⇒ Boolean
-
#initialize(transitions:, start:, finish: nil, random: nil) ⇒ Markov
constructor
A new instance of Markov.
Constructor Details
#initialize(transitions:, start:, finish: nil, random: nil) ⇒ Markov
Returns a new instance of Markov.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/musa-dsl/generative/markov.rb', line 11 def initialize(transitions:, start:, finish: nil, random: nil) @transitions = transitions.clone.freeze @start = start @finish = finish @random = Random.new random if random.is_a?(Integer) @random ||= Random.new @procedure_binders = {} mark_as_prototype! init end |
Instance Attribute Details
#finish ⇒ Object
Returns the value of attribute finish.
27 28 29 |
# File 'lib/musa-dsl/generative/markov.rb', line 27 def finish @finish end |
#random ⇒ Object
Returns the value of attribute random.
28 29 30 |
# File 'lib/musa-dsl/generative/markov.rb', line 28 def random @random end |
#start ⇒ Object
Returns the value of attribute start.
26 27 28 |
# File 'lib/musa-dsl/generative/markov.rb', line 26 def start @start end |
#transitions ⇒ Object
Returns the value of attribute transitions.
29 30 31 |
# File 'lib/musa-dsl/generative/markov.rb', line 29 def transitions @transitions end |
Instance Method Details
#infinite? ⇒ Boolean
78 79 80 |
# File 'lib/musa-dsl/generative/markov.rb', line 78 def infinite? @finish.nil? end |