12345678910111213141516171819202122232425262728293031 | Bool.parse:
short: parse into boolean
description: >
Converts a text representation of a boolean value into a boolean. The
accepted values are `yes`/`no`, `true`/`false`, `on`/`off`, and `1`/`0`,
each written in lowercase (`true`), uppercase (`TRUE`), or capitalized
(`True`). Mixed casings like `tRuE` are not accepted.
return:
type: 'Bool?'
description: >
`yes` if the string matches a recognized truthy boolean value; otherwise return `no`.
args:
text:
type: 'Text'
description: >
The string containing the boolean value.
remainder:
type: '&Text?'
default: 'none'
description: >
If non-none, this argument will be set to the remainder of the text after the matching part.
If none, parsing will only succeed if the entire text matches.
example: |
assert Bool.parse("yes") == yes
assert Bool.parse("no") == no
assert Bool.parse("???") == none
assert Bool.parse("yesJUNK") == none
remainder : Text
assert Bool.parse("yesJUNK", &remainder) == yes
assert remainder == "JUNK"
|