diff options
Diffstat (limited to 'core/source/main/scala/com/rockymadden/stringmetric/tokenize/NGramTokenizer.scala')
-rwxr-xr-x | core/source/main/scala/com/rockymadden/stringmetric/tokenize/NGramTokenizer.scala | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/core/source/main/scala/com/rockymadden/stringmetric/tokenize/NGramTokenizer.scala b/core/source/main/scala/com/rockymadden/stringmetric/tokenize/NGramTokenizer.scala deleted file mode 100755 index aa89b31..0000000 --- a/core/source/main/scala/com/rockymadden/stringmetric/tokenize/NGramTokenizer.scala +++ /dev/null @@ -1,19 +0,0 @@ -package com.rockymadden.stringmetric.tokenize - -import com.rockymadden.stringmetric.Tokenize.StringTokenizer - -final case class NGramTokenizer(n: Int) extends StringTokenizer { - override def tokenize(a: Array[Char]): Option[Array[Array[Char]]] = { - if (n <= 0) return None - - if (a.length < n) None - else Some(sequence(a, Array.empty[Array[Char]], n)) - } - - override def tokenize(a: String): Option[Array[String]] = tokenize(a.toCharArray).map(_.map(_.mkString)) - - @annotation.tailrec - private val sequence: ((Array[Char], Array[Array[Char]], Int) => Array[Array[Char]]) = (i, o, n) => - if (i.length <= n) o :+ i - else sequence(i.tail, o :+ i.take(n), n) -} |