|
Scala example source code file (ReplStrings.scala)
The Scala ReplStrings.scala source code/* NSC -- new Scala compiler * Copyright 2005-2011 LAMP/EPFL * @author Paul Phillips */ package scala.tools.nsc package interpreter import scala.collection.{ mutable, immutable } import scala.PartialFunction.cond import scala.reflect.NameTransformer import scala.tools.nsc.util.Chars trait ReplStrings { // Longest common prefix def longestCommonPrefix(xs: List[String]): String = { if (xs.isEmpty || xs.contains("")) "" else xs.head.head match { case ch => if (xs.tail forall (_.head == ch)) "" + ch + longestCommonPrefix(xs map (_.tail)) else "" } } /** Convert a string into code that can recreate the string. * This requires replacing all special characters by escape * codes. It does not add the surrounding " marks. */ def string2code(str: String): String = { val res = new StringBuilder for (c <- str) c match { case '"' | '\'' | '\\' => res += '\\' ; res += c case _ if c.isControl => res ++= Chars.char2uescape(c) case _ => res += c } res.toString } def string2codeQuoted(str: String) = "\"" + string2code(str) + "\"" def any2stringOf(x: Any, maxlen: Int) = "scala.runtime.ScalaRunTime.replStringOf(%s, %s)".format(x, maxlen) def words(s: String) = s.trim split "\\s+" filterNot (_ == "") toList def isQuoted(s: String) = (s.length >= 2) && (s.head == s.last) && ("\"'" contains s.head) } Other Scala examples (source code examples)Here is a short list of links related to this Scala ReplStrings.scala source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.