diff options
author | Li Haoyi <haoyi@dropbox.com> | 2014-11-05 20:47:41 -0800 |
---|---|---|
committer | Li Haoyi <haoyi@dropbox.com> | 2014-11-05 20:47:41 -0800 |
commit | 80beed1c4184bb564b2e669cc6f43ef4c6108d06 (patch) | |
tree | 8f9a2dafc5dc7558fadfb6eb78a9bbaaffd69cfe /scalatexApi/src/main/scala/scalatex/stages/Trim.scala | |
parent | c7d96c649cf2b2832a597df405f3c1afcd674009 (diff) | |
download | hands-on-scala-js-80beed1c4184bb564b2e669cc6f43ef4c6108d06.tar.gz hands-on-scala-js-80beed1c4184bb564b2e669cc6f43ef4c6108d06.tar.bz2 hands-on-scala-js-80beed1c4184bb564b2e669cc6f43ef4c6108d06.zip |
Trim migration half done
Diffstat (limited to 'scalatexApi/src/main/scala/scalatex/stages/Trim.scala')
-rw-r--r-- | scalatexApi/src/main/scala/scalatex/stages/Trim.scala | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/scalatexApi/src/main/scala/scalatex/stages/Trim.scala b/scalatexApi/src/main/scala/scalatex/stages/Trim.scala index 02d9cc4..1ac7be1 100644 --- a/scalatexApi/src/main/scala/scalatex/stages/Trim.scala +++ b/scalatexApi/src/main/scala/scalatex/stages/Trim.scala @@ -8,16 +8,21 @@ package scalatex.stages * * Remove all trailing whitespace from each line. */ -object Trim extends (String => String){ +object Trim extends (String => (String, Int)){ def apply(str: String) = { - val lines = str.split("\n") + val lines = str.split("\n", -1) val offset = lines.iterator .filter(_.length > 0) .next() .takeWhile(_ == ' ') .length - lines.iterator - .map(_.drop(offset).replaceFirst("\\s+$", "")) - .mkString("\n") + val res = lines.iterator + .map(_.replaceFirst("\\s+$", "")) + .mkString("\n") + (res, offset) + } + def old(str: String) = { + val (res, offset) = this.apply(str) + res.split("\n", -1).map(_.drop(offset)).mkString("\n") } } |