trait TypeStrings extends AnyRef

Logic for turning a type into a String. The goal is to be able to take some arbitrary object 'x' and obtain the most precise String for which an injection of x.asInstanceOf[String] will be valid from both the JVM's and scala's perspectives.

"definition" is when you want strings like

Source
TypeStrings.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TypeStrings
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. def anyClass(x: Any): JClass
  2. def fromClazz(clazz: JClass): String
  3. def fromTag[T](implicit arg0: reflect.api.JavaUniverse.TypeTag[T], arg1: ClassTag[T]): String
  4. def fromValue(value: Any): String

    Going for an overabundance of caution right now.

    Going for an overabundance of caution right now. Later these types can be a lot more precise, but right now the tags have a habit of introducing material which is not syntactically valid as scala source. When this happens it breaks the repl. It would be nice if we mandated that tag toString methods (or some other method, since it's bad practice to rely on toString for correctness) generated the VALID string representation of the type.

  5. def isAnonClass(cl: Class[_]): Boolean
  6. def quieter(tpe: String, alsoStrip: String*): String

    Reducing fully qualified noise for some common packages.

  7. def scalaName(clazz: JClass): String
  8. def scalaName(s: String): String