class Emit::InputGuard
Attributes
action[R]
channel_end[R]
Public Class Methods
new(argument, action=->(msg) {msg}
click to toggle source
# File lib/emit/input_guard.rb, line 5 def initialize(argument, action=->(msg) {msg}) case argument when InputGuard @channel_end, @action = argument.channel_end, argument.action when ChannelEndRead @channel_end, @action = argument, action when Array fail "Wrong number of arguments" unless argument.size == 2 @channel_end, @action = argument else fail "Unknown input guard type" end fail "InputGuard must have a reading channel end." unless ChannelEndRead === @channel_end fail "InputGuard action cannot be nil" if @action.nil? end