NAME
Games::Dukedom::Signal = provide "interrupts" to drive the state-machine
SYNOPSIS
use
Games::Dukedom;
my
$game
= Games::Dukedom->new();
$game
->throw(
'This is a simple message'
);
$game
->throw(
msg
=>
'This is also a simple message'
,
)
$game
->throw(
msg
=>
'Do you want to be King? '
,
action
=>
'get_yn'
,
)
$game
->throw(
msg
=>
'Are you sure [Y/n]? '
,
action
=>
'get_yn'
,
default
=>
'Y'
)
DESCRIPTION
This module is used to signal the application code that a display or input action is needed. This is accomplished by means of the Throwable role.
ATTRIBUTES
All attributes have read-only accessors.
msg
Holds a message to be presented to the user by the caller, if present.
action
Tells the caller what action should be taken before re-entering the main state-machine loop, if present. Currently takes one of the following values:
undef
-
Indicates that no action is needed other than displaying any message that is present.
get_yn
-
Indicates that the caller should supply a "y" or "n" response in
$game->input
. get_value
-
Indicates that the caller should supply a numeric response in
$game->input
.
default
Provides a default response, if present, that may be used if desired to satisfy the requested action.
METHODS
as_string
This method will provide a string representing the error, containing the error's message.
SEE ALSO
AUTHOR
Jim Bacon, <jim@nortx.com>
COPYRIGHT AND LICENSE
Copyright (C) 2014 by Jim Bacon
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version or, at your option, any later version of Perl 5 you may have available.