ShowSum2

ostrat.ShowSum2
See theShowSum2 companion object
abstract class ShowSum2[ST <: AnyRef, A1 <: ST, A2 <: ST](val typeStr: String)(implicit val ct1: ClassTag[A1], val ct2: ClassTag[A2]) extends Show[ST]

Show class for algebraic sum types. If you are using your own code then Show sum types handled by inheritance.

Attributes

Companion
object
Graph
Supertypes
trait Show[ST]
trait Persist
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

def ev1: Show[A1]
def ev2: Show[A2]

Concrete methods

override def show(obj: ST, way: ShowStyle, maxPlaces: Int, minPlaces: Int): String

Attributes

Definition Classes
override def strT(obj: ST): String

Provides the standard string representation for the object. Its called ShowT to indicate this is a type class method that acts upon an object rather than a method on the object being shown.

Provides the standard string representation for the object. Its called ShowT to indicate this is a type class method that acts upon an object rather than a method on the object being shown.

Attributes

Definition Classes
override def syntaxDepth(obj: ST): Int

Simple values such as Int, String, Double have a syntax depth of one. A Tuple3[String, Int, Double] has a depth of 2. Not clear whether this should always be determined at compile time or if sometimes it should be determined at runtime.

Simple values such as Int, String, Double have a syntax depth of one. A Tuple3[String, Int, Double] has a depth of 2. Not clear whether this should always be determined at compile time or if sometimes it should be determined at runtime.

Attributes

Definition Classes

Inherited methods

override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Show -> Any
Inherited from:
Show

This property determines if the type can be used with Multiple syntax.

This property determines if the type can be used with Multiple syntax.

MyObj * 7

. for describing sequences succinctly. This is not desirable for some types such as numerical and mathematical vector types as this could be confusing 3 * 4 should resolve to an Int of value 12, not a Multiple(3, 4).

Attributes

Inherited from:
Persist

Concrete fields

The type of the object to be persisted.

The type of the object to be persisted.

Attributes

Implicits

Implicits

implicit val ct1: ClassTag[A1]
implicit val ct2: ClassTag[A2]