Class: L43Rmap::Runtime
- Inherits:
-
Object
- Object
- L43Rmap::Runtime
- Defined in:
- lib/l43_rmap/runtime.rb,
lib/l43_rmap/runtime/line_time.rb
Defined Under Namespace
Classes: LineTime
Constant Summary collapse
- DefaultDecRandomMax =
10_000
Instance Attribute Summary collapse
-
#chunks ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#current ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#input_stream ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#limit ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#output_stream ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#randomize ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#terminated ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
-
#time ⇒ Object
readonly
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time.
Instance Method Summary collapse
- #image ⇒ Object
- #random_hex ⇒ Object
- #random_rd ⇒ Object
- #run(input, output, randomize: false) ⇒ Object
- #terminate! ⇒ Object
- #timestamp(base, mult: 1_000, now: nil) ⇒ Object
Instance Attribute Details
#chunks ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def chunks @chunks end |
#current ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def current @current end |
#input_stream ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def input_stream @input_stream end |
#limit ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def limit @limit end |
#output_stream ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def output_stream @output_stream end |
#randomize ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def randomize @randomize end |
#terminated ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def terminated @terminated end |
#time ⇒ Object (readonly)
attr_reader :chunks, :current, :input_stream, :output_stream, :rand, :randomize, :terminated, :time
9 10 11 |
# File 'lib/l43_rmap/runtime.rb', line 9 def time @time end |
Instance Method Details
#image ⇒ Object
28 |
# File 'lib/l43_rmap/runtime.rb', line 28 def image = chunks.map(&:image).join("\n") |
#random_hex ⇒ Object
24 |
# File 'lib/l43_rmap/runtime.rb', line 24 def random_hex = @__randomhex__ ||= SecureRandom.hex |
#random_rd ⇒ Object
26 |
# File 'lib/l43_rmap/runtime.rb', line 26 def random_rd = @__randomrd__ ||= (format "%04d", SecureRandom.random_number(DefaultDecRandomMax)) |
#run(input, output, randomize: false) ⇒ Object
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/l43_rmap/runtime.rb', line 13 def run(input, output, randomize: false) @output_stream = make_output_stream(output) @input_stream = make_input_stream(input) @time = Time.now @randomize = randomize execute! rescue EOFError maybe_output_buffer end |
#terminate! ⇒ Object
30 |
# File 'lib/l43_rmap/runtime.rb', line 30 def terminate! = @terminated = true |
#timestamp(base, mult: 1_000, now: nil) ⇒ Object
32 33 34 35 36 |
# File 'lib/l43_rmap/runtime.rb', line 32 def (base, mult: 1_000, now: nil) # p(time2: time.to_f) now ||= time (now.to_f * mult).to_i.to_s(base) end |