module Athena::Console::Question::Base(T)
#
Common logic shared between all question types. See each type for more information.
Direct including types
Athena::Console::Question(T)
Athena::Console::Question::AbstractChoice(T, ChoiceType)
Constructors#
.new(question : String, default : T)
#
Methods#
#default : T
#
Returns the default value if no valid input is provided.
#hidden=(hidden : Bool) : self
#
Sets if the answer should be hidden. See Hiding User Input.
#hidden? : Bool
#
Returns the answer should be hidden. See Hiding User Input.
#hidden_fallback=(hidden_fallback : Bool)
#
If hidden questions should fallback on making the response visible if it was unable to be hidden. See Hiding User Input.
#hidden_fallback? : Bool
#
If hidden questions should fallback on making the response visible if it was unable to be hidden. See Hiding User Input.
#max_attempts : Int32 | ::Nil
#
Returns how many attempts the user has to enter a valid value when a #validator
is set.
See Validating the Answer.
#max_attempts=(attempts : Int32 | Nil) : self
#
Allow at most attempts for the user to enter a valid value when a #validator
is set.
If attempts is nil
, they have an unlimited amount.
#multi_line=(multi_line : Bool)
#
If multi line text should be allowed in the response. See Multiline Input.
#multi_line? : Bool
#
If multi line text should be allowed in the response. See Multiline Input.
#normalizer : Proc(T | String, T) | ::Nil
#
#normalizer : Nil
#
Sets the normalizer callback to this block. See Normalizing the Answer.
#normalizer=(normalizer : Proc(T | String, T) | Nil)
#
#question : String
#
Returns the question that should be asked.
#trimmable=(trimmable : Bool)
#
Returns/sets if the answer value should be automatically trimmed. See Trimming the Answer.
#trimmable? : Bool
#
Returns/sets if the answer value should be automatically trimmed. See Trimming the Answer.