From 5fe89feb43470e7241dc632acba1e5c415c060b0 Mon Sep 17 00:00:00 2001 From: Jean Privat Date: Fri, 27 Feb 2015 12:06:27 +0700 Subject: [PATCH] string: add `is_whitespace` Signed-off-by: Jean Privat --- lib/standard/string.nit | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/standard/string.nit b/lib/standard/string.nit index 9724c31..489654e 100644 --- a/lib/standard/string.nit +++ b/lib/standard/string.nit @@ -386,6 +386,22 @@ abstract class Text # `Char::is_whitespace` determines what is a whitespace. fun trim: SELFTYPE do return (self.l_trim).r_trim + # Is the string non-empty but only made of whitespaces? + # + # assert " \n\t ".is_whitespace == true + # assert " hello ".is_whitespace == false + # assert "".is_whitespace == false + # + # `Char::is_whitespace` determines what is a whitespace. + fun is_whitespace: Bool + do + if is_empty then return false + for c in self.chars do + if not c.is_whitespace then return false + end + return true + end + # Returns `self` removed from its last line terminator (if any). # # assert "Hello\n".chomp == "Hello" -- 1.7.9.5