Class: Toys::Flag::Resolution
- Inherits:
-
Object
- Object
- Toys::Flag::Resolution
- Defined in:
- lib/toys/flag.rb
Overview
The result of looking up a flag by name.
Instance Attribute Summary collapse
-
#string ⇒ String
readonly
The flag string that was looked up.
Instance Method Summary collapse
-
#count ⇒ Integer
The number of matches that were found.
-
#found_exact? ⇒ Boolean
Whether an exact match of the string was found.
-
#found_multiple? ⇒ Boolean
Whether multiple matches were found (i.e. ambiguous input).
-
#found_unique? ⇒ Boolean
Whether a single unique match was found.
-
#matching_flag_strings ⇒ Array<String>
Returns an array of the matching full flag strings.
-
#not_found? ⇒ Boolean
Whether no matches were found.
-
#unique_flag ⇒ Toys::Flag?
Return the unique Toys::Flag, or
nil
if not found or not unique. -
#unique_flag_negative? ⇒ Boolean?
Return whether the unique match was a hit on the negative (
--no-*
) case, ornil
if not found or not unique. -
#unique_flag_syntax ⇒ Toys::Flag::Syntax?
Return the unique Syntax, or
nil
if not found or not unique.
Instance Attribute Details
#string ⇒ String (readonly)
The flag string that was looked up
184 185 186 |
# File 'lib/toys/flag.rb', line 184 def string @string end |
Instance Method Details
#count ⇒ Integer
The number of matches that were found.
198 199 200 |
# File 'lib/toys/flag.rb', line 198 def count @flags.size end |
#found_exact? ⇒ Boolean
Whether an exact match of the string was found
190 191 192 |
# File 'lib/toys/flag.rb', line 190 def found_exact? @found_exact end |
#found_multiple? ⇒ Boolean
Whether multiple matches were found (i.e. ambiguous input).
222 223 224 |
# File 'lib/toys/flag.rb', line 222 def found_multiple? @flags.size > 1 end |
#found_unique? ⇒ Boolean
Whether a single unique match was found.
206 207 208 |
# File 'lib/toys/flag.rb', line 206 def found_unique? @flags.size == 1 end |
#matching_flag_strings ⇒ Array<String>
Returns an array of the matching full flag strings.
257 258 259 260 261 |
# File 'lib/toys/flag.rb', line 257 def matching_flag_strings @flags.map do |_flag, flag_syntax, negative| negative ? flag_syntax.negative_flag : flag_syntax.positive_flag end end |
#not_found? ⇒ Boolean
Whether no matches were found.
214 215 216 |
# File 'lib/toys/flag.rb', line 214 def not_found? @flags.empty? end |
#unique_flag ⇒ Toys::Flag?
Return the unique Toys::Flag, or nil
if not found or
not unique.
231 232 233 |
# File 'lib/toys/flag.rb', line 231 def unique_flag found_unique? ? @flags.first[0] : nil end |
#unique_flag_negative? ⇒ Boolean?
Return whether the unique match was a hit on the negative (--no-*
)
case, or nil
if not found or not unique.
249 250 251 |
# File 'lib/toys/flag.rb', line 249 def unique_flag_negative? found_unique? ? @flags.first[2] : nil end |
#unique_flag_syntax ⇒ Toys::Flag::Syntax?
Return the unique Syntax, or nil
if not found
or not unique.
240 241 242 |
# File 'lib/toys/flag.rb', line 240 def unique_flag_syntax found_unique? ? @flags.first[1] : nil end |