Yardoc for the interactor.

This commit is contained in:
Michael Kessler 2011-09-20 13:10:16 +02:00
parent 98ee450037
commit ad6fe6f69b

View File

@ -1,14 +1,29 @@
module Guard
# The interactor reads user input and triggers
# specific action upon them unless its locked.
#
# Currently the following actions are implemented:
# - stop, quit, exit, s, q, e => Exit Guard
# - reload, r, z => Reload Guard
# - pause, p => Pause Guard
# - Everything else => Run all
#
class Interactor
attr_reader :locked
# Initialize the interactor in unlocked state.
#
def initialize
@locked = false
end
# Start the interactor in a own thread.
#
def start
return if ENV["GUARD_ENV"] == 'test'
Thread.new do
loop do
if (entry = $stdin.gets) && !@locked
@ -28,10 +43,14 @@ module Guard
end
end
# Lock the interactor.
#
def lock
@locked = true
end
# Unlock the interactor.
#
def unlock
@locked = false
end