# HG changeset patch # User Michael Pavone # Date 1401414675 25200 # Node ID 32964a4e7a3321c00bc32a5323c6d5ddc3c64a80 # Parent fb922651db29a2310541a096f97983321084b5e8 Add ltrim method to string diff -r fb922651db29 -r 32964a4e7a33 modules/string.tp --- a/modules/string.tp Wed May 28 09:48:09 2014 -0700 +++ b/modules/string.tp Thu May 29 18:51:15 2014 -0700 @@ -257,6 +257,25 @@ pieces append: self } + ltrim <- { + l <- length + start <- 0 + space <- " " byte: 0 + tab <- "\t" byte: 0 + nl <- "\n" byte: 0 + cr <- "\r" byte: 0 + + while: { + if: start < l { + b <- byte: start + b = space || b = tab || b = nl || b = cr + } + } do: { + start <- start + 1 + } + from: start + } + trim <- { l <- length start <- 0 diff -r fb922651db29 -r 32964a4e7a33 samples/stringops.tp --- a/samples/stringops.tp Wed May 28 09:48:09 2014 -0700 +++ b/samples/stringops.tp Thu May 29 18:51:15 2014 -0700 @@ -20,5 +20,6 @@ print: (string: ("12abcDEF" parseHex32)) . "\n" print: (string: ("FFFFFFFFFF" parseHex64)) . "\n" + print: "'" . (" \nfoobar baz " ltrim) . "'\n" } }