Standard Library
std.parse
Parsing helpers for turning text into typed Tea values.
Exported functions
pub def try_int(text: String) -> Int ! ParseError
Parse an integer from text.
Examples
use parse from "std.parse"
def demonstrate() -> Void
var value = try parse.try_int("many") catch err
case is parse.ParseError.InvalidInt => 0
case _ => 0
end
@println(value) # 0
end
demonstrate()pub def int(text: String) -> Int
Parse an integer from text and panic on invalid input.
Examples
use parse from "std.parse"
@println(parse.int(" 42 ")) # 42pub def try_float(text: String) -> Float ! ParseError
Parse a floating-point number from text.
Examples
use parse from "std.parse"
def demonstrate() -> Void
var value = try parse.try_float("unknown") catch err
case is parse.ParseError.InvalidFloat => 0.0
case _ => 0.0
end
@println(value) # 0
end
demonstrate()pub def float(text: String) -> Float
Parse a floating-point number from text and panic on invalid input.
Examples
use parse from "std.parse"
@println(parse.float("-3.5")) # -3.5pub def try_bool(text: String) -> Bool ! ParseError
Parse a boolean from text.
Examples
use parse from "std.parse"
def demonstrate() -> Void
var value = try parse.try_bool("maybe") catch err
case is parse.ParseError.InvalidBool => false
case _ => false
end
@println(value) # false
end
demonstrate()pub def bool(text: String) -> Bool
Parse a boolean from text and panic on invalid input.
Examples
use parse from "std.parse"
@println(parse.bool("YES")) # true
@println(parse.bool("off")) # falsepub def words(text: String) -> List[String]
Split text into non-empty whitespace-delimited tokens.
Examples
use parse from "std.parse"
@println(parse.words("tea coffee\twater")) # [tea, coffee, water]