class Riffer::Rig::Terminal::MessageQueue
Attributes
messages
[R]
Array[String]
@dynamic messages
Public Class Methods
(?messages: Array[String]) → void
Source
# File lib/riffer/rig/terminal/message_queue.rb, line 9 def initialize(messages: []) @messages = messages.freeze freeze end
@rbs messages: Array @rbs return: void
Public Instance Methods
() → [ String?, Riffer::Rig::Terminal::MessageQueue ]
Source
# File lib/riffer/rig/terminal/message_queue.rb, line 24 def dequeue [messages.first, self.class.new(messages: messages.drop(1))] end
@rbs return: [String?, Riffer::Rig::Terminal::MessageQueue]
(String line) → Riffer::Rig::Terminal::MessageQueue
Source
# File lib/riffer/rig/terminal/message_queue.rb, line 16 def enqueue(line) text = line.strip return self if text.empty? self.class.new(messages: [*messages, text]) end
@rbs line: String @rbs return: Riffer::Rig::Terminal::MessageQueue