ostrat

package ostrat

This is the root package for the Openstrat project. The top of this package contains, 32 bit Int based Colours, the Multiple type class, a show and persistence library using RCON (Name may change), Rich Compact Object Notation, array based compound value collections of same length elements, an Either based errors framework and general utilities.

Type members

Classlikes

final class AnyBuff[A](val unsafeBuff: ArrayBuffer[A]) extends AnyVal with SeqGen[A]

Not sure if this class is necessary now that Arr take Any.

Not sure if this class is necessary now that Arr take Any.

class AnyBuild[B](implicit ct: ClassTag[B], notB: <none>[B]) extends ArrBuilder[B, Arr[B]] with ArrFlatBuilder[Arr[B]]

The default Immutable Array based collection builder for the Arr[A] class.

The default Immutable Array based collection builder for the Arr[A] class.

class AnyRefTypeExtensions[A <: AnyRef](thisA: A)

Extension methods for Any type A.

Extension methods for Any type A.

class AnyTypeExtensions[A](thisA: A)

Extension methods for Any type A.

Extension methods for Any type A.

trait Approx[D] extends Equals
case class Approx2DblsT[T](fArg1: T => Double, fArg2: T => Double, precisionDefault: Double) extends ApproxT[Double, T]
trait ApproxDbl extends Approx[Double]
implicit implicit class ApproxImplicitClass[D, T](thisT: T)(implicit ev: ApproxT[D, T])

Extension methods for approximation type class.

Extension methods for approximation type class.

trait ApproxT[D, T]
Companion:
object
object ApproxT
Companion:
class
final class Area(val metresSq: Double) extends AnyVal

Not sure about this class.

Not sure about this class.

final class Arr[+A](val unsafeArr: Array[A]) extends AnyVal with SeqImut[A]

The immutable Array based class for types without there own specialised SeqImut collection classes. It Inherits the standard foreach, map, flatMap and fold and their variations' methods from ArrayLike. As it stands in Scala 3.0.2-RC1 the Graphics module will not build for Scala3 for the Javascript target.

The immutable Array based class for types without there own specialised SeqImut collection classes. It Inherits the standard foreach, map, flatMap and fold and their variations' methods from ArrayLike. As it stands in Scala 3.0.2-RC1 the Graphics module will not build for Scala3 for the Javascript target.

Companion:
object
object Arr

Companion object for the Arr class contains factory apply method, EqT implicit type class instance and Extension method for Arr[A] where A extends AnyRef.

Companion object for the Arr class contains factory apply method, EqT implicit type class instance and Extension method for Arr[A] where A extends AnyRef.

Companion:
class
object Arr0

Extractor object for empty Arr[A]. Arr[A] is an immutable covariant Array based collection.

Extractor object for empty Arr[A]. Arr[A] is an immutable covariant Array based collection.

object Arr1

Extractor object for Arr[A] of length == 1. Arr[A] is an immutable covariant Array based collection.

Extractor object for Arr[A] of length == 1. Arr[A] is an immutable covariant Array based collection.

object Arr1Tail
object Arr2

Extractor object for Arr[A] of length == 2. Arr[A] is an immutable covariant Array based collection.

Extractor object for Arr[A] of length == 2. Arr[A] is an immutable covariant Array based collection.

object Arr2Tail
object Arr3

Extractor object for Arr[A] of length == 3. Arr[A] is an immutable covariant Array based collection.

Extractor object for Arr[A] of length == 3. Arr[A] is an immutable covariant Array based collection.

object Arr3Tail
object Arr4

Extractor object for Arr[A] of length == 4. Arr[A] is an immutable covariant Array based collection.

Extractor object for Arr[A] of length == 4. Arr[A] is an immutable covariant Array based collection.

object Arr5

Extractor object for Arr[A] of length == 5. Arr[A] is an immutable covariant Array based collection.

Extractor object for Arr[A] of length == 5. Arr[A] is an immutable covariant Array based collection.

object Arr6

Extractor object for Arr[A] of length == 6. Arr[A] is an immutable covariant Array based collection.

Extractor object for Arr[A] of length == 6. Arr[A] is an immutable covariant Array based collection.

trait ArrArrayDbl[A <: ArrayDblBacked] extends SeqImut[A]
trait ArrArrayDblBuild[A <: ArrayDblBacked, ArrT <: ArrArrayDbl[A]] extends ArrBuilder[A, ArrT]

This is the builder for Arrays Arrays of Double. It is not the builder for Arrays of Double.

This is the builder for Arrays Arrays of Double. It is not the builder for Arrays of Double.

class ArrArrayDblEq[A <: ArrayDblBacked, ArrT <: ArrArrayDbl[A]] extends EqT[ArrT]
Companion:
object
Companion:
class
trait ArrBaseOff[A, ArrT <: SeqImut[A]]
trait ArrBuilder[B, ArrB <: SeqImut[B]] extends DataBuilder[B, ArrB]

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

Companion:
object

The companion object for ArrBuild contains implicit ArrBuild instances for common types.

The companion object for ArrBuild contains implicit ArrBuild instances for common types.

Companion:
class
trait ArrDbl1s[A <: ElemDbl1] extends ArrDblNs[A]

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl1s.

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl1s.

trait ArrDbl2s[A <: ElemDbl2] extends ArrDblNs[A] with DataDbl2s[A]

A specialised immutable, flat Array[Double] based sequence of a type of ElemDbl2s.

A specialised immutable, flat Array[Double] based sequence of a type of ElemDbl2s.

trait ArrDbl2sBuilder[B <: ElemDbl2, ArrB <: ArrDbl2s[B]] extends ArrDblNsBuilder[B, ArrB]

Trait for creating the ArrTBuilder type class instances for ArrDbl2s final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl2. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

Trait for creating the ArrTBuilder type class instances for ArrDbl2s final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl2. The first type parameter is called B, because it corresponds to the B in map[B](f: A => B)(implicit build: ArrTBuilder[B, ArrB]): ArrB function.

trait ArrDbl2sFlatBuilder[B <: ElemDbl2, ArrB <: ArrDbl2s[B]] extends ArrDblNsFlatBuilder[B, ArrB]

Trait for creating the ArrTFlatBuilder type class instances for Dbl2Arr final classes. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because it corresponds to the B in

Trait for creating the ArrTFlatBuilder type class instances for Dbl2Arr final classes. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because it corresponds to the B in

build: ArrTBuilder[B, ArrB]): ArrB

function. build: ArrTBuilder[B, ArrB]): ArrB

trait ArrDbl3s[A <: ElemDbl3] extends ArrDblNs[A] with DataDbl3s[A]

A specialised immutable, flat Array[Double] based sequence of a type of ElemDbl3s.

A specialised immutable, flat Array[Double] based sequence of a type of ElemDbl3s.

trait ArrDbl3sBuilder[B <: ElemDbl3, ArrB <: ArrDbl3s[B]] extends ArrDblNsBuilder[B, ArrB]

Trait for creating the ArrTBuilder type class instances for Dbl3Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl3. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder type class instances for Dbl3Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl3. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrDbl4s[A <: ElemDbl4] extends ArrDblNs[A] with DataDbl4s[A]

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl4s.

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl4s.

trait ArrDbl4sBuilder[B <: ElemDbl4, ArrB <: ArrDbl4s[B]] extends ArrDblNsBuilder[B, ArrB]

Trait for creating the ArrTBuilder type class instances for Dbl4Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl4. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder type class instances for Dbl4Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl4. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrDbl4sFlatBuilder[B <: ElemDbl4, ArrB <: ArrDbl4s[B]] extends ArrDblNsFlatBuilder[B, ArrB]

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for Dbl4Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl4. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for Dbl4Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of type B, which will extend ElemDbl4. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrDbl5s[A <: ElemDbl5] extends ArrDblNs[A] with DataDbl5s[A]

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl5s.

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl5s.

trait ArrDbl6s[A <: ElemDbl6] extends ArrDblNs[A] with DataDbl6s[A]

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl6s.

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl6s.

trait ArrDbl7s[A <: ElemDbl7] extends ArrDblNs[A] with DataDbl7s[A]

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl7s.

A specialised immutable, flat Array[Double] based collection of a type of ElemDbl7s.

trait ArrDblNs[A <: ElemDblN] extends ArrValueNs[A] with DataDblNs[A]

Base trait for collections of elements that are products of Doubles, backed by an underlying Array[Double].

Base trait for collections of elements that are products of Doubles, backed by an underlying Array[Double].

trait ArrDblNsBuilder[B <: ElemDblN, ArrB <: ArrDblNs[B]] extends ArrValueNsBuilder[B, ArrB]

Trait for creating the sequence builder type class instances for ArrDblNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the sequence builder type class instances for ArrDblNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrDblNsFlatBuilder[B <: ElemDblN, ArrB <: ArrDblNs[B]] extends ArrValueNsFlatBuilder[B, ArrB]

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for ArrDblNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for ArrDblNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrFlatBuilder[ArrB <: SeqImut[_]] extends DataBuilderCommon[ArrB]

A type class for the building of efficient compact Immutable Arrays through a flatMap method. Instances for this type class for classes / traits you control should go in the companion object of BB. This is different from the related ArrBuilder[BB] type class where the instance should go into the B companion object.

A type class for the building of efficient compact Immutable Arrays through a flatMap method. Instances for this type class for classes / traits you control should go in the companion object of BB. This is different from the related ArrBuilder[BB] type class where the instance should go into the B companion object.

Companion:
object

Companion object for ArrTFlatBuilder, contains implicit instances for atomic value classes.

Companion object for ArrTFlatBuilder, contains implicit instances for atomic value classes.

Companion:
class
object ArrHead
object ArrHead2

Extractor object for the head 2 elements of an Arr, immutable covariant Array based collection. The tail can be any length.

Extractor object for the head 2 elements of an Arr, immutable covariant Array based collection. The tail can be any length.

object ArrHead3
object ArrHead4
trait ArrInt1s[A <: ElemInt1] extends ArrIntNs[A] with DataInt1s[A]

A specialised immutable, flat Array[Int] based collection of a type of ElemInt1s.

A specialised immutable, flat Array[Int] based collection of a type of ElemInt1s.

trait ArrInt1sBuilder[A <: ElemInt1, ArrT <: ArrInt1s[A]] extends ArrIntNsBuilder[A, ArrT]

Trait for creating the ArrTBuilder type class instances for Int1Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder type class instances for Int1Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrInt1sFlatBuilder[A <: ElemInt1, ArrT <: ArrInt1s[A]] extends ArrIntNsFlatBuilder[A, ArrT]

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for Int1Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for Int1Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrInt2s[A <: ElemInt2] extends ArrIntNs[A] with DataInt2s[A]

A specialised immutable, flat Array[Int] based collection of a type of ElemInt2s.

A specialised immutable, flat Array[Int] based collection of a type of ElemInt2s.

trait ArrInt2sBuilder[B <: ElemInt2, ArrB <: ArrInt2s[B]] extends ArrIntNsBuilder[B, ArrB]

Trait for creating the ArrTBuilder type class instances for Int2Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B a sub class of Int2Elem, because to corresponds to the B in the map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder type class instances for Int2Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B a sub class of Int2Elem, because to corresponds to the B in the map(f: A => B): ArrB function.

trait ArrInt2sFlatBuilder[B <: ElemInt2, ArrB <: ArrInt2s[B]] extends ArrIntNsFlatBuilder[B, ArrB]

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for Int2Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B a sub class of Int2Elem, because to corresponds to the B in the map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for Int2Arr final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B a sub class of Int2Elem, because to corresponds to the B in the map(f: A => B): ArrB function.

trait ArrInt4s[A <: ElemInt4] extends ArrIntNs[A]

A specialised immutable, flat Array[Int] based collection of a type of ElemInt4s.

A specialised immutable, flat Array[Int] based collection of a type of ElemInt4s.

abstract class ArrInt4sCompanion[A <: ElemInt4, M <: ArrInt4s[A]]

Class for the singleton companion objects of ArrInt4s final classes to extend.

Class for the singleton companion objects of ArrInt4s final classes to extend.

abstract class ArrInt4sPersist[B <: ElemInt4, ArrB <: ArrInt4s[B]](val typeStr: String) extends DataIntNsPersist[B, ArrB]

Class to persist specialised flat Array[Int] based ArrInt4s collection classes.

Class to persist specialised flat Array[Int] based ArrInt4s collection classes.

trait ArrIntNs[A <: ElemIntN] extends ArrValueNs[A] with DataIntNs[A]

An immutable collection of Elements that inherit from a Product of an Atomic value: Double, Int, Long or Float. They are stored with a backing Array[Int] They are named ProductInts rather than ProductIs because that name can easlily be confused with ProductI1s.

An immutable collection of Elements that inherit from a Product of an Atomic value: Double, Int, Long or Float. They are stored with a backing Array[Int] They are named ProductInts rather than ProductIs because that name can easlily be confused with ProductI1s.

trait ArrIntNsBuilder[B <: ElemIntN, ArrB <: ArrIntNs[B]] extends ArrValueNsBuilder[B, ArrB]

Trait for creating the ArrTBuilder type class instances for ArrIntNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder type class instances for ArrIntNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrIntNsFlatBuilder[B <: ElemIntN, ArrB <: ArrIntNs[B]] extends ArrValueNsFlatBuilder[B, ArrB]

Trait for creating the ArrTFlatBuilder type class instances for ArrIntNs final classes. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTFlatBuilder type class instances for ArrIntNs final classes. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrLong1s[A <: ElemLong1] extends ArrLongNs[A]

A specialised immutable, flat Array[Long] based collection of a type of ElemLong1s.

A specialised immutable, flat Array[Long] based collection of a type of ElemLong1s.

trait ArrLongNs[A <: ElemLongN] extends ArrValueNs[A]

Base trait for Array[Long] based collections of Products of Longs.

Base trait for Array[Long] based collections of Products of Longs.

trait ArrLongNsCompanion[A <: ElemLongN, ArrA <: ArrLongNs[A]] extends DataValueNsCompanion[A, ArrA]

Helper trait for Companion objects of ArrLongNs classes.

Helper trait for Companion objects of ArrLongNs classes.

final class ArrOff[A](val offset0: Int) extends AnyVal with ArrBaseOff[A, Arr[A]]

Immutable heapless iterator for Arr.

Immutable heapless iterator for Arr.

case object ArrOff0

Extractor for empty immutable heapless iterator for Arr.

Extractor for empty immutable heapless iterator for Arr.

object ArrOff1

Extractor object for an immutable heapless iterator for Arr with exactly 1 element.

Extractor object for an immutable heapless iterator for Arr with exactly 1 element.

Extractor for immutable heapless iterator for Arr with at least l element.

Extractor for immutable heapless iterator for Arr with at least l element.

object ArrOff2

Extractor object for an immutable heapless iterator for Arr with exactly 2 elements.

Extractor object for an immutable heapless iterator for Arr with exactly 2 elements.

object ArrOff3

Extractor object for an immutable heapless iterator for Arr with exactly 3 elements.

Extractor object for an immutable heapless iterator for Arr with exactly 3 elements.

object ArrOffHead
trait ArrValueNs[A <: ElemValueN] extends SeqImut[A] with DataValueNs[A]

An immutable Arr of homogeneous value products. Currently there is no compelling use case for heterogeneous value products, but the homogeneous name is being used to avoid having to change the name if and when homogeneous value product Arrs are implemented.

An immutable Arr of homogeneous value products. Currently there is no compelling use case for heterogeneous value products, but the homogeneous name is being used to avoid having to change the name if and when homogeneous value product Arrs are implemented.

trait ArrValueNsBuilder[B <: ElemValueN, ArrB <: ArrValueNs[B]] extends ArrBuilder[B, ArrB]

Trait for creating the ArrTBuilder. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

trait ArrValueNsFlatBuilder[B <: ElemValueN, ArrB <: ArrValueNs[B]] extends ArrFlatBuilder[ArrB]

Trait for creating the ArrTFlatBuilder type class instances for ArrValueNs final classes. Instances for the [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTFlatBuilder type class instances for ArrValueNs final classes. Instances for the [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

implicit implicit class ArrayBufferDoubleExtensions(thisBuff: ArrayBuffer[Double])
implicit implicit class ArrayBufferExtensions[A](thisBuff: ArrayBuffer[A])(implicit ct: ClassTag[A])

Trait for Array[Double] backed classes. The purpose of this trait is to allow for collections of this class to be stored with their underlying Array[Double]s.

Trait for Array[Double] backed classes. The purpose of this trait is to allow for collections of this class to be stored with their underlying Array[Double]s.

trait ArrayDoubleBuff[A <: ArrayDblBacked] extends SeqGen[A]

This is a buffer class for Arrays of Double. It is not a Buffer class for Arrays.

This is a buffer class for Arrays of Double. It is not a Buffer class for Arrays.

final class ArrayExtensions[A](val thisArray: Array[A]) extends AnyVal

Extension methods for Array[A] class

Extension methods for Array[A] class

implicit implicit class ArrayIntExtension(array: Array[Int])
final class ArrayValueNElemExtensions[A <: ElemValueN](val thisArray: Array[A]) extends AnyVal

Extension methods for Array[A <: ValueNElem] class

Extension methods for Array[A <: ValueNElem] class

class Bad[+A](val errs: Strings) extends EMon[A]

The errors case of EMon[+A]. This corresponds, but is not functionally equivalent to an Either[List[String], +A] based Left[List[String], +A].

The errors case of EMon[+A]. This corresponds, but is not functionally equivalent to an Either[List[String], +A] based Left[List[String], +A].

Companion:
object
object Bad
Companion:
class
final case class Bad2[A1, A2](errs: Strings) extends EMon2[A1, A2]

Specialised Bad for values of 2 types, instead of using Bad[(A, B)].

Specialised Bad for values of 2 types, instead of using Bad[(A, B)].

final class Bad3[A1, A2, A3](val errs: Strings) extends EMon3[A1, A2, A3]

Specialised Bad for values of 3 types, instead of using Bad[(A, B, C)].

Specialised Bad for values of 3 types, instead of using Bad[(A, B, C)].

Companion:
object
object Bad3

Companion object for the Bad3 trait, contains factory apply and unapply methods.

Companion object for the Bad3 trait, contains factory apply and unapply methods.

Companion:
class

Extractor function object for a Base32 lower case letter, 'a' .. 'n' and 'p'.. 'w'.

Extractor function object for a Base32 lower case letter, 'a' .. 'n' and 'p'.. 'w'.

Extractor function object for a Base32 upper case letter, 'A' .. 'N' and 'P'.. 'W'.

Extractor function object for a Base32 upper case letter, 'A' .. 'N' and 'P'.. 'W'.

final class BooleanBuff(val unsafeBuffer: ArrayBuffer[Boolean]) extends AnyVal with SeqGen[Boolean]
final class BooleanExtensions(val thisBool: Boolean) extends AnyVal
final class Booleans(val unsafeArray: Array[Boolean]) extends AnyVal with SeqImut[Boolean]

An immutable efficient Array[Boolean] backed sequence class for Booleans.

An immutable efficient Array[Boolean] backed sequence class for Booleans.

Companion:
object
object Booleans
Companion:
class
trait BuffDbl2s[A <: ElemDbl2] extends BuffDblNs[A]

A specialised flat ArrayBuffer[Double] based trait for ElemDbl2s collections.

A specialised flat ArrayBuffer[Double] based trait for ElemDbl2s collections.

trait BuffDbl3s[A <: ElemDbl3] extends BuffDblNs[A]

A specialised flat ArrayBuffer[Double] based trait for ElemDbl3s collections.

A specialised flat ArrayBuffer[Double] based trait for ElemDbl3s collections.

trait BuffDbl4s[A <: ElemDbl4] extends BuffDblNs[A]

A specialised flat ArrayBuffer[Double] based trait for ElemDbl4s collections.

A specialised flat ArrayBuffer[Double] based trait for ElemDbl4s collections.

trait BuffDblNs[A <: ElemDblN] extends BuffValueNs[A]

Specialised flat ArrayBuffer[Double] based collection class.

Specialised flat ArrayBuffer[Double] based collection class.

trait BuffInt1s[A <: ElemInt1] extends BuffIntNs[A]

A specialised flat ArrayBuffer[Int] based trait for ElemInt1s collections.

A specialised flat ArrayBuffer[Int] based trait for ElemInt1s collections.

trait BuffInt2s[A <: ElemInt2] extends BuffIntNs[A]

A specialised flat ArrayBuffer[Int] based trait for ElemInt2s collections.

A specialised flat ArrayBuffer[Int] based trait for ElemInt2s collections.

trait BuffInt4s[A <: ElemInt4, M <: ArrInt4s[A]] extends BuffIntNs[A]

A specialised flat ArrayBuffer[Int] based trait for ElemInt4s collections.

A specialised flat ArrayBuffer[Int] based trait for ElemInt4s collections.

trait BuffIntNs[A <: ElemIntN] extends BuffValueNs[A]

Specialised flat ArrayBuffer[Int] based collection class.

Specialised flat ArrayBuffer[Int] based collection class.

trait BuffLong1s[A <: ElemLong1, ArrA <: ArrLong1s[A]] extends BuffLongNs[A]

A specialised flat ArrayBuffer[long] based trait for ElemLong1s collections.

A specialised flat ArrayBuffer[long] based trait for ElemLong1s collections.

trait BuffLongNs[A <: ElemLongN] extends BuffValueNs[A]

Specialised flat ArrayBuffer[Double] based collection class.

Specialised flat ArrayBuffer[Double] based collection class.

trait BuffValueNs[A <: ElemValueN] extends SeqGen[A]

Specialised flat arraybuffer based collection class, where the underlying ArrayBuffer element is an atomic value like Int, Double or Long.

Specialised flat arraybuffer based collection class, where the underlying ArrayBuffer element is an atomic value like Int, Double or Long.

class CharExtensions(thisChar: Char)
final class Chars(val unsafeArray: Array[Char]) extends AnyVal with SeqImut[Char]

Efficient immutable Array based collection for Chars.

Efficient immutable Array based collection for Chars.

Companion:
object
object Chars

Companion object of Chars class contains repeat parameter apply factor method.

Companion object of Chars class contains repeat parameter apply factor method.

Companion:
class
final class CharsOff(val offset0: Int) extends AnyVal with ArrBaseOff[Char, Chars]

Immutable heapless iterator for Char arrays.

Immutable heapless iterator for Char arrays.

Companion:
object
object CharsOff
Companion:
class
case object CharsOff0

Extractor for empty immutable heapless iterator for Chars.

Extractor for empty immutable heapless iterator for Chars.

object CharsOff1

Extractor object for immutable heapless iterator for Chars with length == 1.

Extractor object for immutable heapless iterator for Chars with length == 1.

Extractor for immutable heapless iterator for Chars with at l element.

Extractor for immutable heapless iterator for Chars with at l element.

object CharsOff2

Extractor object for immutable heapless iterator for Chars with length == 2.

Extractor object for immutable heapless iterator for Chars with length == 2.

Extractor for immutable heapless iterator for Chars with at least 2 elements.

Extractor for immutable heapless iterator for Chars with at least 2 elements.

object CharsOff3

Extractor object for immutable heapless iterator for Chars with length == 3.

Extractor object for immutable heapless iterator for Chars with length == 3.

Extractor for immutable heapless iterator for Chars with at least 3 elements.

Extractor for immutable heapless iterator for Chars with at least 3 elements.

object CharsOff4

Extractor object for immutable heapless iterator for Chars with length == 4.

Extractor object for immutable heapless iterator for Chars with length == 4.

Extractor for immutable heapless iterator for Chars with at least 4 elements.

Extractor for immutable heapless iterator for Chars with at least 4 elements.

Extractor object for the first element for immutable heapless iterator for Chars with at length >= 1. Use this when you don't care about the tail.

Extractor object for the first element for immutable heapless iterator for Chars with at length >= 1. Use this when you don't care about the tail.

Extractor object for the first 2 elements for immutable heapless iterator for Chars with length >= 2. Use this when you don't care about the tail.

Extractor object for the first 2 elements for immutable heapless iterator for Chars with length >= 2. Use this when you don't care about the tail.

Extractor object for the first 3 elements for immutable heapless iterator for Chars with length >= 3. Use this when you don't care about the tail.

Extractor object for the first 3 elements for immutable heapless iterator for Chars with length >= 3. Use this when you don't care about the tail.

Extractor object for the first 3 elements for immutable heapless iterator for Chars with length >= 3. Use this when you don't care about the tail.

Extractor object for the first 3 elements for immutable heapless iterator for Chars with length >= 3. Use this when you don't care about the tail.

final class Colour(val argbValue: Int) extends AnyVal with FillFacet with ElemInt1

The argbValue must start with 0xFF if the default full opacity is required. So 0xFFFF0000 gives full opacity Red

The argbValue must start with 0xFF if the default full opacity is required. So 0xFFFF0000 gives full opacity Red

Companion:
object
object Colour

Companion object for Colour class, contains named values for the standard web colours and implicit instances for various type classes.

Companion object for Colour class, contains named values for the standard web colours and implicit instances for various type classes.

Companion:
class
final class ColourBuff(val unsafeBuffer: ArrayBuffer[Int]) extends AnyVal with BuffInt1s[Colour]

ArrayBuffer based buffer class for Colours.

ArrayBuffer based buffer class for Colours.

trait Coloured extends AnyRef

This trait provides a few handy methods for classes with the colour member

This trait provides a few handy methods for classes with the colour member

final class Colours(val unsafeArray: Array[Int]) extends AnyVal with ArrInt1s[Colour]

Specialist Arr, immutable sequence Array[Int] based class for Colours.

Specialist Arr, immutable sequence Array[Int] based class for Colours.

Companion:
object
object Colours

Companion object for the Colours class, contains apply factory method and helper methods.

Companion object for the Colours class, contains apply factory method and helper methods.

Companion:
class
trait DataBuilder[B, BB <: DataImut[B]] extends DataBuilderCommon[BB]

A Common base trait for Arrbuilder, ArrFlatBuilder and other builders like Polygon and LinePath builders.

A Common base trait for Arrbuilder, ArrFlatBuilder and other builders like Polygon and LinePath builders.

trait DataDbl2s[A <: ElemDbl2] extends DataDblNs[A]

A specialised immutable, flat Array[Double] based trait defined by a data sequence of a type of ElemDbl2s.

A specialised immutable, flat Array[Double] based trait defined by a data sequence of a type of ElemDbl2s.

trait DataDbl2sCompanion[A <: ElemDbl2, ArrA <: DataDbl2s[A]] extends DataDblNsCompanion[A, ArrA]

Class for the singleton companion objects of ArrDbl2s final classes to extend.

Class for the singleton companion objects of ArrDbl2s final classes to extend.

abstract class DataDbl2sPersist[A <: ElemDbl2, M <: DataDbl2s[A]](val typeStr: String) extends DataDblNsPersist[A, M]

Persists and assists in building ArrDblNss.

Persists and assists in building ArrDblNss.

trait DataDbl3s[A <: ElemDbl3] extends DataDblNs[A]

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl3s.

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl3s.

abstract class DataDbl3sCompanion[A <: ElemDbl3, ArrA <: DataDbl3s[A]] extends DataDblNsCompanion[A, ArrA]

Class for the singleton companion objects of ArrDbl3s final classes to extend.

Class for the singleton companion objects of ArrDbl3s final classes to extend.

abstract class DataDbl3sPersist[A <: ElemDbl3, M <: DataDbl3s[A]](val typeStr: String) extends DataDblNsPersist[A, M]

Persists ArrDbl3ss.

Persists ArrDbl3ss.

trait DataDbl4s[A <: ElemDbl4] extends DataDblNs[A]

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl4s.

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl4s.

abstract class DataDbl4sCompanion[A <: ElemDbl4, ArrA <: DataDbl4s[A]]

Class for the singleton companion objects of ArrDbl4s final classes to extend.

Class for the singleton companion objects of ArrDbl4s final classes to extend.

abstract class DataDbl4sPersist[A <: ElemDbl4, ArrA <: DataDbl4s[A]](val typeStr: String) extends DataDblNsPersist[A, ArrA]

Persists [[Dble4Elem] Collection classes.

Persists [[Dble4Elem] Collection classes.

trait DataDbl5s[A <: ElemDbl5] extends DataDblNs[A]

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl5s.

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl5s.

abstract class DataDbl5sCompanion[A <: ElemDbl5, ArrA <: DataDbl5s[A]]

Helper class for companion objects of final ArrDbl5s classes.

Helper class for companion objects of final ArrDbl5s classes.

abstract class DataDbl5sPersist[A <: ElemDbl5, ArrA <: DataDbl5s[A]](val typeStr: String) extends DataDblNsPersist[A, ArrA]

Both Persists and Builds ArrDbl5s Collection classes.

Both Persists and Builds ArrDbl5s Collection classes.

trait DataDbl6s[A <: ElemDbl6] extends DataDblNs[A]

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl6s.

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl6s.

abstract class DataDbl6sCompanion[A <: ElemDbl6, ArrA <: DataDbl6s[A]]

Helper class for companion objects of final ArrDbl6s classes.

Helper class for companion objects of final ArrDbl6s classes.

trait DataDbl7s[A <: ElemDbl7] extends DataDblNs[A]

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl7s.

A specialised immutable, flat Array[Double] based trait defined by data sequence of a type of ElemDbl7s.

abstract class DataDbl7sCompanion[A <: ElemDbl7, ArrA <: DataDbl7s[A]] extends DataDblNsCompanion[A, ArrA]

Helper class for companion objects of final DataDbl7s classes.

Helper class for companion objects of final DataDbl7s classes.

trait DataDblNs[A <: ElemDblN] extends DataValueNs[A] with ArrayDblBacked

Base trait for classes that are defined by collections of elements that are products of Doubles, backed by an underlying Array[Double]. As well as ArrDblNs classes this is also the base trait for classes like polygons that are defined by a collection of points.

Base trait for classes that are defined by collections of elements that are products of Doubles, backed by an underlying Array[Double]. As well as ArrDblNs classes this is also the base trait for classes like polygons that are defined by a collection of points.

trait DataDblNsCompanion[A <: ElemDblN, ArrA <: DataDblNs[A]] extends DataValueNsCompanion[A, ArrA]

Helper trait for Companion objects of ArrDblNs classes.

Helper trait for Companion objects of ArrDblNs classes.

trait DataDblNsPersist[A <: ElemDblN, M <: DataDblNs[A]] extends DataValueNsPersist[A, M] with EqT[M]

Persists ArrDblNss.

Persists ArrDblNss.

trait DataGen[A]

Base trait for all efficient classes backed by Arrays, ArrayBuffers etc. Includes sequences and classes such as polygons and line paths that are encoded using sequence data. include immutable and expandable buffers.

Base trait for all efficient classes backed by Arrays, ArrayBuffers etc. Includes sequences and classes such as polygons and line paths that are encoded using sequence data. include immutable and expandable buffers.

class DataGenShowT[A, R <: DataGen[A]](val evA: ShowT[A]) extends ShowTSeqLike[A, R]

[[ShowT] type class for showing DataGen[A] objects.

[[ShowT] type class for showing DataGen[A] objects.

trait DataImut[+A] extends DataGen[A]

Base trait for all immutable classes that use a backing Array for efficient storage. This includes immutable sequences SeqImut, but also polygons and line paths that are specified by data sequences.

Base trait for all immutable classes that use a backing Array for efficient storage. This includes immutable sequences SeqImut, but also polygons and line paths that are specified by data sequences.

trait DataInt1s[A <: ElemInt1] extends DataIntNs[A]

A specialised immutable, flat Array[Int] based trait defined by a data sequence of a type of ElemInt1s.

A specialised immutable, flat Array[Int] based trait defined by a data sequence of a type of ElemInt1s.

trait DataInt2s[A <: ElemInt2] extends DataIntNs[A]

A specialised immutable, flat Array[Double] based trait defined by a data sequence of a type of ElemInt2s.

A specialised immutable, flat Array[Double] based trait defined by a data sequence of a type of ElemInt2s.

abstract class DataInt2sCompanion[A <: ElemInt2, ArrA <: DataInt2s[A]] extends DataIntNsCompanion[A, ArrA]

Helper class for companion objects of final Int2sArr classes.

Helper class for companion objects of final Int2sArr classes.

trait DataIntNs[A <: ElemIntN] extends DataValueNs[A]
trait DataIntNsCompanion[A <: ElemIntN, ArrA <: DataIntNs[A]] extends DataValueNsCompanion[A, ArrA]

Helper trait for Companion objects of IntNArr collection classes, where the type parameter ArrA is the ElemIntN type of the of the collection class.

Helper trait for Companion objects of IntNArr collection classes, where the type parameter ArrA is the ElemIntN type of the of the collection class.

trait DataIntNsPersist[A <: ElemIntN, M <: DataIntNs[A]] extends DataValueNsPersist[A, M]

Class to persist specialised flat Array[Int] based collections.

Class to persist specialised flat Array[Int] based collections.

trait DataValueNs[A <: ElemValueN] extends DataImut[A]

An immutable trait defined by a collection of homogeneous value products. The underlying array is Array[Double], Array[Int] etc. The descendant classes include both ValueNscollections and classes like polygons and lines.

An immutable trait defined by a collection of homogeneous value products. The underlying array is Array[Double], Array[Int] etc. The descendant classes include both ValueNscollections and classes like polygons and lines.

Helper trait for companion objects of DataValueNs classes. These are flat Array[Int], Array[Double] etc, flat collection classes.

Helper trait for companion objects of DataValueNs classes. These are flat Array[Int], Array[Double] etc, flat collection classes.

Class to Persist specialised for DatValueNs cLasses.

Class to Persist specialised for DatValueNs cLasses.

trait Dbl3sArrFlatBuilder[B <: ElemDbl3, ArrB <: ArrDbl3s[B]] extends ArrDblNsFlatBuilder[B, ArrB]

Trait for creating the ArrFlatBuilder type class instances for Dbl3Arr final classes. Instances for the for classes / traits you control, should go in the companion object of the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrFlatBuilder type class instances for Dbl3Arr final classes. Instances for the for classes / traits you control, should go in the companion object of the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

final class Dbls(val unsafeArray: Array[Double]) extends AnyVal with SeqImut[Double]

An immutable Array based class for Doubles.

An immutable Array based class for Doubles.

Companion:
object
object Dbls

Companion object for the Dbls Array based class for Doubles, contains a repeat parameter factory method.

Companion object for the Dbls Array based class for Doubles, contains a repeat parameter factory method.

Companion:
class
final class DblsBuff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal with SeqGen[Double]

Compile time wrapped Buffer class for Doubles, used to buildDbls.

Compile time wrapped Buffer class for Doubles, used to buildDbls.

trait DefaultValue[T]

Type class for default values.

Type class for default values.

Companion:
object

Companion object for the DefaultValue type class trait, contains instances for common types.

Companion object for the DefaultValue type class trait, contains instances for common types.

Companion:
class
object DigitChar

Extractor function object for digit character.

Extractor function object for digit character.

Extractor function object for digit character.

Extractor function object for digit character.

final class DoubleImplicit(val thisDouble: Double) extends AnyVal

Extension class for Double. This is created as a separate class to keep down the size of the package object.

Extension class for Double. This is created as a separate class to keep down the size of the package object.

sealed trait EMon[+A]

An Errors handling class. Consider changing name to EHan. The main ways to consume the final result of the flatMap operation are fold, getElse, foreach and forEither. This corresponds, but is not functionally equivalent to an Either[StrList, A] or Either[List[String], +A]. There are advantages to having a separate class and I find that I rarely use Either apart from with standard errors as the Left type. However use the methods biMap, to Either, eitherMap and eitherFlatMap when interoperability with Either is required. In my view Either[T] class is redundant and is rarely used except as an errors handler. So it makes sense to use a dedicated class.

An Errors handling class. Consider changing name to EHan. The main ways to consume the final result of the flatMap operation are fold, getElse, foreach and forEither. This corresponds, but is not functionally equivalent to an Either[StrList, A] or Either[List[String], +A]. There are advantages to having a separate class and I find that I rarely use Either apart from with standard errors as the Left type. However use the methods biMap, to Either, eitherMap and eitherFlatMap when interoperability with Either is required. In my view Either[T] class is redundant and is rarely used except as an errors handler. So it makes sense to use a dedicated class.

Companion:
object
object EMon

Companion object for EMon triat contains implict class for EMon returning extension methods on String and Show implicit instance.

Companion object for EMon triat contains implict class for EMon returning extension methods on String and Show implicit instance.

Companion:
class
sealed trait EMon2[+A1, +A2]

Specialised EMon for values of 2 types, instead of using EMon[(A, B)].

Specialised EMon for values of 2 types, instead of using EMon[(A, B)].

sealed trait EMon3[+A1, +A2, +A3]

Specialised EMon for values of 3 types, instead of using EMon[(A, B, C)].

Specialised EMon for values of 3 types, instead of using EMon[(A, B, C)].

trait ElemDbl1 extends ElemDblN

An object that can be constructed from a single Double. These are used in ArrDbl1s Array[Int] based collections.

An object that can be constructed from a single Double. These are used in ArrDbl1s Array[Int] based collections.

trait ElemDbl2 extends ElemDblN

An object that can be constructed from 2 Doubles. These are used as elements in ArrDbl2s Array[Double] based collections.

An object that can be constructed from 2 Doubles. These are used as elements in ArrDbl2s Array[Double] based collections.

trait ElemDbl3 extends ElemDblN

An object that can be constructed from 3 Doubles. These are used in ArrDbl3s Array[Double] based collections.

An object that can be constructed from 3 Doubles. These are used in ArrDbl3s Array[Double] based collections.

trait ElemDbl4 extends ElemDblN

An object that can be constructed from 4 Doubles. These are used in ArrDbl4s Array[Double] based collections.

An object that can be constructed from 4 Doubles. These are used in ArrDbl4s Array[Double] based collections.

trait ElemDbl5 extends ElemDblN

An object that can be constructed from 5 Doubles. These are used in ArrDbl5s Array[Double] based collections.

An object that can be constructed from 5 Doubles. These are used in ArrDbl5s Array[Double] based collections.

trait ElemDbl6 extends ElemDblN

An object that can be constructed from 6 Doubles. These are used in ArrDbl6s Array[Double] based collections.

An object that can be constructed from 6 Doubles. These are used in ArrDbl6s Array[Double] based collections.

trait ElemDbl7 extends ElemDblN

An object that can be constructed from 7 Doubles. These are used in DataDbl7s classes including ArrDbl7s sequence collections.

An object that can be constructed from 7 Doubles. These are used in DataDbl7s classes including ArrDbl7s sequence collections.

trait ElemDblN extends ElemValueN

An object that can be constructed from N Doubles. These are used as elements in ArrDblNs Array[Double] based collections.

An object that can be constructed from N Doubles. These are used as elements in ArrDblNs Array[Double] based collections.

trait ElemInt1 extends ElemIntN

An object that can be constructed from a single Int. These are used in ArrInt1s Array[Int] based collections.

An object that can be constructed from a single Int. These are used in ArrInt1s Array[Int] based collections.

trait ElemInt2 extends ElemIntN

An object that can be constructed from 2 Ints. These are used in ArrInt2s Array[Int] based collections.

An object that can be constructed from 2 Ints. These are used in ArrInt2s Array[Int] based collections.

trait ElemInt4 extends ElemIntN

An object that can be constructed from 4 Ints. These are used in ArrInt4s Array[Int] based collections.

An object that can be constructed from 4 Ints. These are used in ArrInt4s Array[Int] based collections.

trait ElemIntN extends ElemValueN

A class that can be construct from a fixed number of Ints can be stored as an Array[Int] of primitive values.

A class that can be construct from a fixed number of Ints can be stored as an Array[Int] of primitive values.

trait ElemLong1 extends ElemLongN

An object that can be constructed from a single Long. These are used in Long1Arr Array[Int] based collections.

An object that can be constructed from a single Long. These are used in Long1Arr Array[Int] based collections.

trait ElemLongN extends ElemValueN

A class that can be constructed from a fixed number of Longs. It can be stored as an Array[Long] of primitive values.

A class that can be constructed from a fixed number of Longs. It can be stored as an Array[Long] of primitive values.

trait ElemValueN extends SpecialT

A class that can be constructed from a fixed number of homogeneous primitive values such as Ints, Doubles or Longs. The final class can be stored as * an Array of primitive values. Note the classes that extend this trait do not extend Product or its numbered sub traits, because the logical size of the product may not be the same as the number of primitive values, for example a LineSeg is a product of 2 Pt2s, but is composed from 4 Double values.

A class that can be constructed from a fixed number of homogeneous primitive values such as Ints, Doubles or Longs. The final class can be stored as * an Array of primitive values. Note the classes that extend this trait do not extend Product or its numbered sub traits, because the logical size of the product may not be the same as the number of primitive values, for example a LineSeg is a product of 2 Pt2s, but is composed from 4 Double values.

class Eq1T[A1, R](val fArg1: R => A1)(implicit eq1: EqT[A1]) extends EqT[R]
case class Eq2DblsT[R](fArg1: R => Double, fArg2: R => Double) extends Eq2T[Double, Double, R]
trait Eq2T[A1, A2, R] extends EqT[R]

Equality type class trait for Product 2.

Equality type class trait for Product 2.

Companion:
object
object Eq2T
Companion:
class
class Eq3T[A1, A2, A3, R](val fArg1: R => A1, val fArg2: R => A2, val fArg3: R => A3)(implicit eq1: EqT[A1], eq2: EqT[A2], eq3: EqT[A3]) extends EqT[R]

Equality type class trait for Product 3.

Equality type class trait for Product 3.

Companion:
object
object Eq3T
Companion:
class
class Eq4T[A1, A2, A3, A4, R](val fArg1: R => A1, val fArg2: R => A2, val fArg3: R => A3, val fArg4: R => A4)(implicit eq1: EqT[A1], eq2: EqT[A2], eq3: EqT[A3], eq4: EqT[A4]) extends EqT[R]

Equality type class trait for Product 4.

Equality type class trait for Product 4.

trait EqT[T]

Equals type class trait has one method eqT that tests Equality on 2 values of type T.

Equals type class trait has one method eqT that tests Equality on 2 values of type T.

Companion:
object
object EqT

The campanion object for the EqT type class, containing instances for common types. This does not currently use a functor instance for a number of reasons.

The campanion object for the EqT type class, containing instances for common types. This does not currently use a functor instance for a number of reasons.

Companion:
class
implicit implicit class EqerImplicit[T](thisT: T)(implicit ev: EqT[T])
final class Floats(val unsafeArray: Array[Float]) extends AnyVal with SeqImut[Float]

Immutable Array based class for Floats.

Immutable Array based class for Floats.

Companion:
object
object Floats
Companion:
class
final class FloatsBuff(val unsafeBuffer: ArrayBuffer[Float]) extends AnyVal with SeqGen[Float]
trait Functor[F[_]]

The functor type class.

The functor type class.

Companion:
object
object Functor

Companion object for the Functor type class, contains implicit instances.

Companion object for the Functor type class, contains implicit instances.

Companion:
class
implicit implicit class FunitRichImp(fu: () => Unit)
case class GitProj(path: String, projName: String)

A class for creating simple one module git projects, with Sbt Mill and hello world files.

A class for creating simple one module git projects, with Sbt Mill and hello world files.

final case class Good[+A](value: A) extends EMon[A]

The Good sub class of EMon[+A]. This corresponds, but is not functionally equivalent to an Either[List[String], +A] based Right[Refs[String], +A].

The Good sub class of EMon[+A]. This corresponds, but is not functionally equivalent to an Either[List[String], +A] based Right[Refs[String], +A].

Companion:
object
object Good
Companion:
class
final case class Good2[A1, A2](a1: A1, a2: A2) extends EMon2[A1, A2]

Specialised Good for values of 2 types, instead of using Good[(A, B)].

Specialised Good for values of 2 types, instead of using Good[(A, B)].

final case class Good3[+A1, +A2, +A3](a1: A1, a2: A2, a3: A3) extends EMon3[A1, A2, A3]

Specialised Good for values of 3 types, instead of using Good[(A, B, C)].

Specialised Good for values of 3 types, instead of using Good[(A, B, C)].

case object GoodArr0

Extractor function object for a Good Arr Sequence of length 0.

Extractor function object for a Good Arr Sequence of length 0.

object GoodArr1

Extractor function object for a Good Arr Sequence of length 1.

Extractor function object for a Good Arr Sequence of length 1.

object GoodArr2
object GoodArr3
object GoodArr4
object HelloEmon extends App

Test App for EMons.

Test App for EMons.

Extractor function object for hexadecimal characters.

Extractor function object for hexadecimal characters.

Extractor function object for lower case hexadecimal letter, 'a' .. 'f'.

Extractor function object for lower case hexadecimal letter, 'a' .. 'f'.

Extractor function object for upper case Hexadecimal letter, 'A' .. 'F'.

Extractor function object for upper case Hexadecimal letter, 'A' .. 'F'.

object Hour
final class IntBuff(val unsafeBuffer: ArrayBuffer[Int]) extends AnyVal with SeqGen[Int]

ArrayBuffer class for Ints. End users should rarely have need to use this class

ArrayBuffer class for Ints. End users should rarely have need to use this class

final class IntExtensions(val thisInt: Int) extends AnyVal

Extension methods for Int.

Extension methods for Int.

final class Ints(val unsafeArray: Array[Int]) extends AnyVal with SeqImut[Int]

Immutable efficient ArrayInt backed class for Ints. There are no concat methods, as Ints has no type parameter and can not be widened.

Immutable efficient ArrayInt backed class for Ints. There are no concat methods, as Ints has no type parameter and can not be widened.

Companion:
object
object Ints

Companion object for the Ints claas an immutable efficient Array backed sequence for class Ints. Contains apply factory method and implicit type class instances.

Companion object for the Ints claas an immutable efficient Array backed sequence for class Ints. Contains apply factory method and implicit type class instances.

Companion:
class

Builder object for Ints.

Builder object for Ints.

trait IsType[A <: AnyRef]
Companion:
object
object IsType
Companion:
class
implicit implicit class IterableAnyRefImplicit[A <: AnyRef](thisIter: Iterable[A])(implicit ct: ClassTag[A])
final class IterableExtensions[A](val thisIter: Iterable[A]) extends AnyVal

Extension methods for Iterable[A].

Extension methods for Iterable[A].

final class IterableValueNElemExtensions[A <: ElemValueN](val thisIter: Iterable[A]) extends AnyVal

Extension methods for Iterable[A <: ValueNElem].

Extension methods for Iterable[A <: ValueNElem].

final class Length(val metresNum: Double) extends AnyVal with Ordered[Length]

Length can be negative. The underlying data is stored in metres.

Length can be negative. The underlying data is stored in metres.

Companion:
object
object Length

Companion object for the Length class.

Companion object for the Length class.

Companion:
class
object LetterChar

Extractor function object for letter character.

Extractor function object for letter character.

Extractor function object for lower case letter character.

Extractor function object for lower case letter character.

Extractor function object for letter or digit character.

Extractor function object for letter or digit character.

Extractor function object for letter or underscore.

Extractor function object for letter or underscore.

Extractor function object for upper case letter character.

Extractor function object for upper case letter character.

final class ListExtensions[A](val thisList: List[A]) extends AnyVal
final class LongExtensions(val thisLong: Long) extends AnyVal
trait LongNsArrBuilders[B <: ElemLongN, ArrB <: ArrLongNs[B]] extends DataValueNsPersist[B, ArrB]

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for ArrLongNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

Trait for creating the ArrTBuilder and ArrTFlatBuilder type class instances for ArrLongNs final classes. Instances for the ArrBuilder type class, for classes / traits you control, should go in the companion object of B. Instances for [[ArrFlatBuilder] should go in the companion object the ArrT final class. The first type parameter is called B, because to corresponds to the B in map(f: A => B): ArrB function.

final class Longs(val unsafeArray: Array[Long]) extends AnyVal with SeqImut[Long]

Immutable Array based class for Longs.

Immutable Array based class for Longs.

Companion:
object
object Longs
Companion:
class
final class LongsBuff(val unsafeBuffer: ArrayBuffer[Long]) extends AnyVal with SeqGen[Long]
final class MinesBuff(val unsafeBuffer: ArrayBuffer[Double]) extends AnyVal with BuffDbl2s[MyDbl2]
object Minute
case class Multiple[+A](value: A, num: Int)

The Multiple type class allow you to represent multiple values of type A. Implicit conversion in package object.

The Multiple type class allow you to represent multiple values of type A. Implicit conversion in package object.

Companion:
object
object Multiple

Companion object for the Multiple[+A] type class.

Companion object for the Multiple[+A] type class.

Companion:
class
case class MyDbl2(a: Double, b: Double) extends ElemDbl2

An example of a class that is based on the product of 2 Doubles. This class, MyDbl2s and their companion objects show you the boiler plate necessary to create and use custom efficient flat Array based immutable collection classes.

An example of a class that is based on the product of 2 Doubles. This class, MyDbl2s and their companion objects show you the boiler plate necessary to create and use custom efficient flat Array based immutable collection classes.

Companion:
object
object MyDbl2
Companion:
class
final class MyDbl2s(val unsafeArray: Array[Double]) extends AnyVal with ArrDbl2s[MyDbl2]
Companion:
object
Companion:
class
case object NoColour extends OptColour with NoOpt[Colour]
case object NoInt extends OptInt with NoOpt[Int]
trait NoOpt[A] extends Opt[A]
case object NoOptEither extends OptEither[Nothing, Nothing]

An OptEither with a none value it has neither a value of type A or typeB,

An OptEither with a none value it has neither a value of type A or typeB,

trait NotSubTypeOf[A, B]
Companion:
object
Companion:
class

Extractor object for operator characters.

Extractor object for operator characters.

trait Opt[A]
sealed trait OptColour extends Opt[Colour]
sealed trait OptEither[+A, +B]

An Optional Either. The value can be an A a B or none.

An Optional Either. The value can be an A a B or none.

trait OptInt extends Opt[Int]
final case class OptRef[+A <: AnyRef](value: A) extends AnyVal
final class OptRefs[A <: AnyRef](val unsafeArray: Array[A]) extends AnyVal

OptRefs is an array based collection of optional values, that uses nulls for implementation. The collection use should not have to interact with the null values directly.

OptRefs is an array based collection of optional values, that uses nulls for implementation. The collection use should not have to interact with the null values directly.

Companion:
object
object OptRefs
Companion:
class
class OptionExtensions[A](thisOption: Option[A])
trait Persist[T] extends ShowT[T] with Unshow[T]

A convenience trait type class trait for persistence, that combines the ShowT and Unshow type classes. Most if not all final classes that inherit from this trait will require type class instances of ShowT and UnShowT to implement Persist's members. It is most important that these implicit parameter instances be specified as separate ShowT and UnShowT parameters. Do not combine them into a Persist parameter. There are no implicit instances for Int, Double, List etc in the Persist companion object, the Persist components for these standard types will be found in the ShowT and UnShow companion objects.

A convenience trait type class trait for persistence, that combines the ShowT and Unshow type classes. Most if not all final classes that inherit from this trait will require type class instances of ShowT and UnShowT to implement Persist's members. It is most important that these implicit parameter instances be specified as separate ShowT and UnShowT parameters. Do not combine them into a Persist parameter. There are no implicit instances for Int, Double, List etc in the Persist companion object, the Persist components for these standard types will be found in the ShowT and UnShow companion objects.

trait Persist2[A1, A2, R] extends Show2T[A1, A2, R] with Unshow2[A1, A2, R] with PersistN[R]

Persistence class for product 2 type class. It ShowTs and UnShows objects with 2 logical parameters.

Persistence class for product 2 type class. It ShowTs and UnShows objects with 2 logical parameters.

Companion:
object
object Persist2

Factory object for Persist product 2 type class that persists objects with 2 parameters.

Factory object for Persist product 2 type class that persists objects with 2 parameters.

Companion:
class
trait Persist3[A1, A2, A3, R] extends Show3T[A1, A2, A3, R] with Unshow3[A1, A2, A3, R] with PersistN[R]

Persistence class for 3 logical parameter product types.

Persistence class for 3 logical parameter product types.

Companion:
object
object Persist3

Companion object for Persist3 trait contains implementation class and factory apply method.

Companion object for Persist3 trait contains implementation class and factory apply method.

Companion:
class
abstract class PersistArrInt2s[A <: ElemInt2, M <: ArrInt2s[A]](val typeStr: String) extends DataIntNsPersist[A, M]

Class to persist ArrInt2s collection classes.

Class to persist ArrInt2s collection classes.

trait PersistCompound[R] extends ShowCompoundT[R] with Persist[R]

Persistence base trait for PersistCase and PersistSeqLike. Some methods probably need to be moved down into sub classes.

Persistence base trait for PersistCase and PersistSeqLike. Some methods probably need to be moved down into sub classes.

abstract class PersistIterable[A, R <: Iterable[A]](ev: Persist[A]) extends PersistSeqLike[A, R] with ShowIterable[A, R]
trait PersistN[R] extends Persist[R] with ShowNT[R]

The base trait for the persistence of algebraic product types, including case classes. Note the arity of the product, its size is based on the number of logical parameters. For example, a LineSeg is a product 2, it has a start point and an end point, although its is stored as 4 parameters xStart, yStart, xEnd, yEnd.

The base trait for the persistence of algebraic product types, including case classes. Note the arity of the product, its size is based on the number of logical parameters. For example, a LineSeg is a product 2, it has a start point and an end point, although its is stored as 4 parameters xStart, yStart, xEnd, yEnd.

class PersistSeqImplicit[A](ev: Persist[A]) extends PersistIterable[A, Seq[A]]
abstract class PersistSeqLike[A, R](val evA: Persist[A]) extends ShowTSeqLike[A, R] with PersistCompound[R]
trait PersistShow2[A1, A2, R <: Show2[A1, A2]] extends Persist2[A1, A2, R] with ShowShow2T[A1, A2, R]

Persist type class for types that extends Show2.

Persist type class for types that extends Show2.

Companion:
object

Companion object for the PersistShow2 class the persists object that extend Show2. Contains an apply factory method.

Companion object for the PersistShow2 class the persists object that extend Show2. Contains an apply factory method.

Companion:
class
trait PersistShow3[A1, A2 <: ShowDec, A3 <: ShowDec, R <: Show3[A1, A2, A3]] extends Persist3[A1, A2, A3, R] with PersistShowN[R] with ShowShow3T[A1, A2, A3, R]
Companion:
object

Companion object for the PersistShow3 class the persists object that extend ShowDec3. Contains an apply factory method.

Companion object for the PersistShow3 class the persists object that extend ShowDec3. Contains an apply factory method.

Companion:
class
class PersistShowDbl2[R <: ShowDbl2](val typeStr: String, val name1: String, val name2: String, val newT: (Double, Double) => R, val opt2: Option[Double], opt1In: Option[Double]) extends PersistShow2[Double, Double, R] with ShowShowDbl2T[R]

Persistence class for types that extends ShowDbl2.

Persistence class for types that extends ShowDbl2.

class PersistShowDbl3[R <: ShowDbl3](val typeStr: String, val name1: String, val name2: String, val name3: String, val newT: (Double, Double, Double) => R, val opt3: Option[Double], val opt2In: Option[Double], opt1In: Option[Double]) extends Persist3[Double, Double, Double, R] with PersistShowN[R] with ShowShowDbl3T[R]

Persistence class for types that extends ShowDbl3.

Persistence class for types that extends ShowDbl3.

class PersistShowInt2[R <: ShowElemInt2](val typeStr: String, val name1: String, val name2: String, val newT: (Int, Int) => R, val opt2: Option[Int], opt1In: Option[Int]) extends PersistShow2[Int, Int, R] with ShowShowInt2T[R]

Persistence type class for types that extend ShowElemInt2.

Persistence type class for types that extend ShowElemInt2.

Companion:
object
Companion:
class
trait PersistShowN[R <: ShowN] extends PersistN[R] with ShowShowNT[R]

Persist trait for types whose objects inherit from ShowDecN.

Persist trait for types whose objects inherit from ShowDecN.

abstract class PersistSimple[A](val typeStr: String) extends ShowSimpleT[A] with Persist[A]

A Persist class described by a single value. This may be removed. Its not clear whether this means a single token or not.

A Persist class described by a single value. This may be removed. Its not clear whether this means a single token or not.

abstract class PersistSingletons[A <: ShowSimple](typeStr: String) extends PersistSimple[A]

I think this class may be redundant and can be replace by a more general PersistSum class for displaying algebraic sum types.

I think this class may be redundant and can be replace by a more general PersistSum class for displaying algebraic sum types.

abstract class PersistSum2[ST <: AnyRef, A1 <: ST, A2 <: ST](val ev1: Persist[A1], val ev2: Persist[A2])(implicit ct1: ClassTag[A1], ct2: ClassTag[A2]) extends ShowSum2[ST, A1, A2] with UnShowSum2[ST, A1, A2] with Persist[ST]
implicit implicit class RangeExtensions(range: Range)
implicit implicit class RefBufferExtensions[A <: AnyRef](thisBuff: ArrayBuffer[A])

Needs Changing.

Needs Changing.

final class Rval(val str: String) extends AnyVal

Helper class for constructing Strings from ShowT implicit instances on objects.

Helper class for constructing Strings from ShowT implicit instances on objects.

Companion:
object
object Rval
Companion:
class
object Second
class SeqExtensions[A](thisSeq: Seq[A])

Extension methods for the Seq[A] class. These are bought into scope by the seqToImplicit method in the package object.

Extension methods for the Seq[A] class. These are bought into scope by the seqToImplicit method in the package object.

trait SeqGen[+A] extends DataGen[A]

This the base trait for all efficient sequence collections based on Array like classes, Arrays, ArrayBuffers etc. The final classes compile time wrap the platform Array and buffer classes. So currently there are just two classes for each type A, An ArrImut that wraps a standard immutable Array to produce an immutable array, and a ArrBuff that wraps an ArrayBuffer. Currently this just in a standard ArrayBuffer. Where A is a compound value types or an AnyVal type.

This the base trait for all efficient sequence collections based on Array like classes, Arrays, ArrayBuffers etc. The final classes compile time wrap the platform Array and buffer classes. So currently there are just two classes for each type A, An ArrImut that wraps a standard immutable Array to produce an immutable array, and a ArrBuff that wraps an ArrayBuffer. Currently this just in a standard ArrayBuffer. Where A is a compound value types or an AnyVal type.

trait SeqImut[+A] extends SeqGen[A] with DataImut[A]

Base trait for specialised immutable Arrays. "Arr" is the prescript for all immutable collection classes backed by underlying Arrays. The final classes extend AnyVal using standard Java /Javascript Arrays for their underlying storage. A lot of the time this is a compile time wrapper with no boxing run cost.

Base trait for specialised immutable Arrays. "Arr" is the prescript for all immutable collection classes backed by underlying Arrays. The final classes extend AnyVal using standard Java /Javascript Arrays for their underlying storage. A lot of the time this is a compile time wrapper with no boxing run cost.

final class Setting(val str: String) extends AnyVal

Class for creating RSOn settings.

Class for creating RSOn settings.

Companion:
object
object Setting
Companion:
class
trait Show extends TypeStr

A trait for providing an alternative to toString. USing this trait can be convenient, but at some level of the inheritance the type must provide a ShowT type class instance. It is better for the ShowT type class instance to delegate to this trait than have the toString method delegate to the ShowT type class instance in the companion object. Potentially that can create initialisation order problems, but at the very least it can increase compile times. The capabilities of decimal place precision and explicit typing for numbers are placed defined here and in the corresponding SHowT type class although they have n meaning / purpose for many types, as seperating them adds enormous complexity for very little gain.

A trait for providing an alternative to toString. USing this trait can be convenient, but at some level of the inheritance the type must provide a ShowT type class instance. It is better for the ShowT type class instance to delegate to this trait than have the toString method delegate to the ShowT type class instance in the companion object. Potentially that can create initialisation order problems, but at the very least it can increase compile times. The capabilities of decimal place precision and explicit typing for numbers are placed defined here and in the corresponding SHowT type class although they have n meaning / purpose for many types, as seperating them adds enormous complexity for very little gain.

trait Show2[A1, A2] extends ShowN with TypeStr2[A1, A2]

Trait for ShowDec for a product of 2 logical elements. This trait is implemented directly by the type in question, unlike the corresponding Show2T trait which externally acts on an object of the specified type to create its String representations. For your own types it is better to inherit from Show2 and then use ShowShow2T or Persist2ElemT to create the type class instance for ShowT. The ShowShow2T or PersistShow2 class will delegate to Show2 for some of its methods. It is better to use Show2 to override toString method than delegating the toString override to a Show2T instance.

Trait for ShowDec for a product of 2 logical elements. This trait is implemented directly by the type in question, unlike the corresponding Show2T trait which externally acts on an object of the specified type to create its String representations. For your own types it is better to inherit from Show2 and then use ShowShow2T or Persist2ElemT to create the type class instance for ShowT. The ShowShow2T or PersistShow2 class will delegate to Show2 for some of its methods. It is better to use Show2 to override toString method than delegating the toString override to a Show2T instance.

trait Show2T[A1, A2, R] extends ShowNT[R]

Show type class for 2 parameter case classes.

Show type class for 2 parameter case classes.

Companion:
object
object Show2T

Companion object for the Show2T type class trait that shows object with 2 logical fields.

Companion object for the Show2T type class trait that shows object with 2 logical fields.

Companion:
class
class Show2TExtensions[A1, A2, -T](ev: Show2T[A1, A2, T], thisVal: T)
trait Show3[A1, A2, A3] extends ShowN with TypeStr3[A1, A2, A3]

Trait for ShowDec for a product of 3 logical elements. This trait is implemented directly by the type in question, unlike the corresponding ShowEq3T trait which externally acts on an object of the specified type to create its String representations. For your own types it is better to inherit from Show3 and then use Show3ElemT or Persist3ElemT to create the type class instance for ShowT. The Show3ElemT or Persist3Elem class will delegate to Show3 for some of its methods. It is better to use Show3 to override toString method than delegating the toString override to a ShowEq3T instance.

Trait for ShowDec for a product of 3 logical elements. This trait is implemented directly by the type in question, unlike the corresponding ShowEq3T trait which externally acts on an object of the specified type to create its String representations. For your own types it is better to inherit from Show3 and then use Show3ElemT or Persist3ElemT to create the type class instance for ShowT. The Show3ElemT or Persist3Elem class will delegate to Show3 for some of its methods. It is better to use Show3 to override toString method than delegating the toString override to a ShowEq3T instance.

trait Show3T[A1, A2, A3, R] extends ShowNT[R]

Show type class for 3 parameter case classes.

Show type class for 3 parameter case classes.

Companion:
object
object Show3T
Companion:
class
trait Show4T[A1, A2, A3, A4, R] extends ShowNT[R]

Show type class for 4 parameter case classes.

Show type class for 4 parameter case classes.

Companion:
object
object Show4T
Companion:
class
trait Show5T[A1, A2, A3, A4, A5, R] extends ShowNT[R]

ShowT type class for 5 parameter case classes.

ShowT type class for 5 parameter case classes.

Companion:
object
object Show5T

Companion object for Show5T trait contains implementation class and factory apply method.

Companion object for Show5T trait contains implementation class and factory apply method.

Companion:
class
trait Show6T[A1, A2, A3, A4, A5, A6, R] extends ShowNT[R]

ShowT type class for 6 parameter case classes.

ShowT type class for 6 parameter case classes.

Companion:
object
object Show6T

Companion object for Show6T contains implementation class and factory apply method.

Companion object for Show6T contains implementation class and factory apply method.

Companion:
class
object ShowCommas extends ShowStyle

Show the object just as its comma separated constituent values.

Show the object just as its comma separated constituent values.

trait ShowCompoundT[R] extends ShowT[R]

Show trait for Compound types contain elements, requiring the Show class or classes for the type or types of the constituent elements.

Show trait for Compound types contain elements, requiring the Show class or classes for the type or types of the constituent elements.

trait ShowDbl2 extends Show2[Double, Double]

Shows a class with 2 Double components. Note if the class also extends ElemDbl2, the dbl1 and dbl2 properties, may be different to the show1 and show2 properties, unless the class extends ShowElemDbl2.

Shows a class with 2 Double components. Note if the class also extends ElemDbl2, the dbl1 and dbl2 properties, may be different to the show1 and show2 properties, unless the class extends ShowElemDbl2.

trait ShowDbl3 extends Show3[Double, Double, Double]

Show classes with 3 Double parameters.

Show classes with 3 Double parameters.

trait ShowDec extends Show
trait ShowElemDbl2 extends ShowDbl2 with ElemDbl2

Trait for Show for product of 2 Doubles that is also an ElemDbl2. This trait is implemented directly by the type in question, unlike the corresponding ShowShowDbl2T trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over Show2T.

Trait for Show for product of 2 Doubles that is also an ElemDbl2. This trait is implemented directly by the type in question, unlike the corresponding ShowShowDbl2T trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over Show2T.

trait ShowElemDbl3 extends ShowDbl3 with ElemDbl3

Trait for Show for product of 2 Doubles. This trait is implemented directly by the type in question, unlike the corresponding ShowShowDbl2T trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over Show2T.

Trait for Show for product of 2 Doubles. This trait is implemented directly by the type in question, unlike the corresponding ShowShowDbl2T trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over Show2T.

trait ShowElemInt2 extends Show2[Int, Int] with ElemInt2

Trait for Show for product of 2 Ints that is also an ElemInt2. This trait is implemented directly by the type in question, unlike the corresponding ShowShowInt2T trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over Show2T.

Trait for Show for product of 2 Ints that is also an ElemInt2. This trait is implemented directly by the type in question, unlike the corresponding ShowShowInt2T trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over Show2T.

trait ShowIterable[A, R <: Iterable[A]] extends ShowTSeqLike[A, R]
trait ShowN extends ShowDec

Trait for Show for product types. This trait is implemented directly by the type in question, unlike the corresponding ShowNT trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over ShowNT.

Trait for Show for product types. This trait is implemented directly by the type in question, unlike the corresponding ShowNT trait which externally acts on an object of the specified type to create its String representations. For your own types ShowProduct is preferred over ShowNT.

trait ShowNT[R] extends ShowCompoundT[R] with ShowT[R]

The base trait for the persistence of algebraic product types, including case classes.

The base trait for the persistence of algebraic product types, including case classes.

trait ShowNoDec extends Show
object ShowParamNames extends ShowStyle

Show the object in the standard default manner, with parameter names.

Show the object in the standard default manner, with parameter names.

object ShowSemis extends ShowStyle

Show the object as semicolon separated constituent values.

Show the object as semicolon separated constituent values.

object ShowSemisNames extends ShowStyle

Show the object as semicolon separated constituent values preceded b y their parameter names.

Show the object as semicolon separated constituent values preceded b y their parameter names.

trait ShowShow2T[A1, A2, R <: Show2[A1, A2]] extends Show2T[A1, A2, R] with ShowShowT[R]

Type class trait for Showing Show2 objects.

Type class trait for Showing Show2 objects.

Companion:
object
object ShowShow2T
Companion:
class
trait ShowShow3T[A1, A2, A3, R <: Show3[A1, A2, A3]] extends Show3T[A1, A2, A3, R] with ShowShowNT[R]
trait ShowShowDbl2T[R <: ShowDbl2] extends ShowShow2T[Double, Double, R]

A trait for making quick ShowT instances for ShowDbl2 types. It uses the functionality of the ShowDbl2.

A trait for making quick ShowT instances for ShowDbl2 types. It uses the functionality of the ShowDbl2.

Companion:
object
Companion:
class
trait ShowShowDbl3T[R <: ShowDbl3] extends ShowShow3T[Double, Double, Double, R] with ShowNT[R]
Companion:
object
Companion:
class
trait ShowShowInt2T[R <: ShowElemInt2] extends ShowShow2T[Int, Int, R]

A trait for making quick ShowT instances for ShowElemInt2 classes. It uses the functionality of the ShowelemInt2.

A trait for making quick ShowT instances for ShowElemInt2 classes. It uses the functionality of the ShowelemInt2.

Companion:
object
Companion:
class
trait ShowShowNT[R <: ShowN] extends ShowNT[R] with ShowShowT[R]
trait ShowShowT[R <: ShowDec] extends ShowT[R]

A sub trait of the ShowT sub class where the type parameter of ShowT extends Show. This allows the ShowT type class to delegate to the Show class for the implementation of its strT and ShowT methods. It is better to use ShowDec and ShowElemT for types you control than have the toString method delegate to the ShowT type class instance in the companion object. Potentially that can create initialisation order problems, but at the very least it can increase compile times.

A sub trait of the ShowT sub class where the type parameter of ShowT extends Show. This allows the ShowT type class to delegate to the Show class for the implementation of its strT and ShowT methods. It is better to use ShowDec and ShowElemT for types you control than have the toString method delegate to the ShowT type class instance in the companion object. Potentially that can create initialisation order problems, but at the very least it can increase compile times.

Companion:
object
object ShowShowT
Companion:
class
trait ShowSimple extends ShowNoDec

All the leaves of this trait must be Singleton objects. They just need to implement the str method. This will normally be the name of the object, but sometimes, it may be a lengthened or shortened version of the singleton object name.

All the leaves of this trait must be Singleton objects. They just need to implement the str method. This will normally be the name of the object, but sometimes, it may be a lengthened or shortened version of the singleton object name.

trait ShowSimpleT[-A] extends ShowT[A]

Shows a simple object like a Singleton object or a Double. For your own objects that you control it is better to use Show and its helper sub rather than the sub traits of ShowT to implement your Show functionality.S

Shows a simple object like a Singleton object or a Double. For your own objects that you control it is better to use Show and its helper sub rather than the sub traits of ShowT to implement your Show functionality.S

object ShowStandard extends ShowStyle

Show the object in the standard default manner.

Show the object in the standard default manner.

Show the object in the standard default manner, with field names and their types.

Show the object in the standard default manner, with field names and their types.

sealed trait ShowStyle

Currently can't think of a better name for this trait

Currently can't think of a better name for this trait

abstract class ShowSum2[ST <: AnyRef, A1 <: ST, A2 <: ST]()(implicit val ct1: ClassTag[A1], val ct2: ClassTag[A2]) extends ShowT[ST]

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

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

Companion:
object
object ShowSum2
Companion:
class
trait ShowT[-T] extends TypeStr

A type class for string, text and visual representation of objects. An alternative to toString. This trait has mor demanding ambitions Mostly you will want to use Persist which not only gives the Show methods to String representation, but the methods to parse Strings back to objects of the type T. However it may often be useful to start with Show type class and upgrade it later to Persist[T]. The capabilities of decimal place precision and explicit typing for numbers are placed defined here and in the corresponding SHow type class although they have n meaning / purpose for many types, as separating them adds enormous complexity for very little gain.

A type class for string, text and visual representation of objects. An alternative to toString. This trait has mor demanding ambitions Mostly you will want to use Persist which not only gives the Show methods to String representation, but the methods to parse Strings back to objects of the type T. However it may often be useful to start with Show type class and upgrade it later to Persist[T]. The capabilities of decimal place precision and explicit typing for numbers are placed defined here and in the corresponding SHow type class although they have n meaning / purpose for many types, as separating them adds enormous complexity for very little gain.

Companion:
object
object ShowT
Companion:
class
class ShowTExtensions[-A](ev: ShowT[A], thisVal: A)
trait ShowTSeqLike[A, R] extends ShowCompoundT[R] with ShowT[R]
object ShowTyped extends ShowStyle

Show the object with the type of the object even if the string representation does not normally states its type. Eg Int(7).

Show the object with the type of the object even if the string representation does not normally states its type. Eg Int(7).

object ShowUnderScore extends ShowStyle

Represents the object with an underscore.

Represents the object with an underscore.

case class SomeA[+A, +B](value: A) extends OptEither[A, B]

An OptEither instantiation that has a value of type A, the first type parameter.

An OptEither instantiation that has a value of type A, the first type parameter.

case class SomeB[+A, +B](value: B) extends OptEither[A, B]

An OptEither instantiation that has a value of type B, the second type parameter.

An OptEither instantiation that has a value of type B, the second type parameter.

class SomeColour(argbValue: Int) extends OptColour with SomeT[Colour]
Companion:
object
object SomeColour
Companion:
class
case class SomeInt(value: Int) extends OptInt with SomeT[Int]
object SomeRef
trait SomeT[A] extends Opt[A]

if you create your own specialist Arr class for a type T, make sure that type T extends SpecialT.

if you create your own specialist Arr class for a type T, make sure that type T extends SpecialT.

trait SpecialT

if you create your own specialist Arr class for a type T, make sure that type T extends SpecialT. Traits that extend SpecialT are excluded from the implicit instance for Arr.

if you create your own specialist Arr class for a type T, make sure that type T extends SpecialT. Traits that extend SpecialT are excluded from the implicit instance for Arr.

object StrPosn
final class StringImplicit(val thisString: String) extends AnyVal

Extension methods for String. Brought into scope by the stringToImplicit method in the package object.

Extension methods for String. Brought into scope by the stringToImplicit method in the package object.

final class Strings(val unsafeArray: Array[String]) extends AnyVal with SeqImut[String]

Immutable Array based class for Strings.

Immutable Array based class for Strings.

Companion:
object
object Strings

Companion object of ArrStrings class contains repeat parameter apply factor method.

Companion object of ArrStrings class contains repeat parameter apply factor method.

Companion:
class
final class StringsBuff(val unsafeBuffer: ArrayBuffer[String]) extends AnyVal with SeqGen[String]
trait Sumable[A]

A type class for a sum like operation

A type class for a sum like operation

Companion:
object
object Sumable
Companion:
class
case class TextPosn(fileName: String, lineNum: Int, linePosn: Int)
Companion:
object
object TextPosn
Companion:
class
trait TextSpan
Companion:
object
object TextSpan
Companion:
class

The purpose of this trait is to give the position span of the syntax from its opening and closing components.

The purpose of this trait is to give the position span of the syntax from its opening and closing components.

Companion:
object
Companion:
class
object TimeDate
Companion:
class
final class TimeDate(val tics: Long) extends AnyVal
Companion:
object
object TimeSpan
Companion:
class
final class TimeSpan(val tics: Long) extends AnyVal
Companion:
object
implicit implicit class Tuple2Implicit[A1, A2](thisTuple: (A1, A2))
trait TypeStr

Common super trait for ShowDec, ShowT and Unshow. All of which inherit the typeStr property.

Common super trait for ShowDec, ShowT and Unshow. All of which inherit the typeStr property.

trait TypeStr2[A1, A2] extends TypeStr

A base trait for Show2 and UnShow2 it declares the common properties of name1, name2, opt1 and opt2. It is not a base trait for Show2T, as ShowShow2T classes do not need this data, as they can delgate to the Show2 object to implement their interfaces.

A base trait for Show2 and UnShow2 it declares the common properties of name1, name2, opt1 and opt2. It is not a base trait for Show2T, as ShowShow2T classes do not need this data, as they can delgate to the Show2 object to implement their interfaces.

trait TypeStr3[A1, A2, A3] extends TypeStr2[A1, A2]

A base trait for Show3T and Unshow3, declares the common properties of name1 - 3 and opt1 - 3.

A base trait for Show3T and Unshow3, declares the common properties of name1 - 3 and opt1 - 3.

trait TypeStr4[A1, A2, A3, A4] extends TypeStr3[A1, A2, A3]

A base trait for Show4T and Unshow4, declares the common properties of name1 - 4 and opt1 - 4.

A base trait for Show4T and Unshow4, declares the common properties of name1 - 4 and opt1 - 4.

trait TypeStr5[A1, A2, A3, A4, A5] extends TypeStr4[A1, A2, A3, A4]

A base trait for Unshow5, declares the common properties of name1 - 5 and opt1 - 5.

A base trait for Unshow5, declares the common properties of name1 - 5 and opt1 - 5.

trait TypeStr6[A1, A2, A3, A4, A5, A6] extends TypeStr5[A1, A2, A3, A4, A5]

A base trait for Unshow6, declares the common properties of name1 - 6 and opt1 - 6.

A base trait for Unshow6, declares the common properties of name1 - 6 and opt1 - 6.

trait UnShowSum2[+ST <: AnyRef, A1 <: ST, A2 <: ST] extends Unshow[ST]
trait Unshow[+T] extends TypeStr

The UnShow type class produces an object in memory or an error sequence from RSON syntax strings.

The UnShow type class produces an object in memory or an error sequence from RSON syntax strings.

Companion:
object
object Unshow

Companion object for the Unshow type class trait, contains implicit instances for common types.

Companion object for the Unshow type class trait, contains implicit instances for common types.

Companion:
class
trait Unshow2[A1, A2, R] extends Unshow[R] with TypeStr2[A1, A2]

UnShow type class trait for a 2 element Product.

UnShow type class trait for a 2 element Product.

Companion:
object
object Unshow2
Companion:
class
trait Unshow3[A1, A2, A3, R] extends Unshow[R] with TypeStr3[A1, A2, A3]

UnShow class for 3 logical parameter product types.

UnShow class for 3 logical parameter product types.

Companion:
object
object Unshow3
Companion:
class
trait Unshow4[A1, A2, A3, A4, R] extends Unshow[R] with TypeStr4[A1, A2, A3, A4]

UnShow class for 3 logical parameter product types.

UnShow class for 3 logical parameter product types.

trait Unshow5[A1, A2, A3, A4, A5, R] extends Unshow[R] with TypeStr5[A1, A2, A3, A4, A5]

Unshow trait for 5 parameter product / case classes.

Unshow trait for 5 parameter product / case classes.

trait Unshow6[A1, A2, A3, A4, A5, A6, R] extends Unshow[R] with TypeStr6[A1, A2, A3, A4, A5, A6]

UnShow trait for 6 parameter product / case classes.

UnShow trait for 6 parameter product / case classes.

final class Volume(val metresCubed: Double) extends AnyVal

Not sure about this class.

Not sure about this class.

object WebPage1 extends App

Extractor object for whitespace characters.

Extractor object for whitespace characters.

object WholeHours
Companion:
class
final class WholeHours(val value: Int) extends AnyVal
Companion:
object
object fileWrite

Function object for writing a file.

Function object for writing a file.

object homeWrite

Function object to get statements from a Java build resource.

Function object to get statements from a Java build resource.

Types

type AnyRefs = Arr[AnyRef]
type Buff[A] = ArrayBuffer[A]
type EArr[A <: AnyRef] = EMon[Arr[A]]
type Not[T] = { type L = NotSubTypeOf; }
type RefTag[A] = AnyRef & ClassTag[A]
type RefsMulti[A <: AnyRef] = Arr[Multiple[A]]
type ShowEq[A] = ShowT[A] & EqT[A]

Value members

Concrete methods

def Buff[A](initialLength: Int): ArrayBuffer[A]
def NoRef[A <: AnyRef]: OptRef[A]
def average(d1: Double, tail: Double*): Double

Gives the average of the supplied values.

Gives the average of the supplied values.

def bad1[B](fs: TextSpan, detail: String): Bad[B]
def badNone[B](detail: String): Bad[B]
def buffInt(initialLength: Int): ArrayBuffer[Int]
def commaedInts(iSeq: Int*): String
inline def deb(str: String): Unit

Simple macro, prints out String preceded by source code position.

Simple macro, prints out String preceded by source code position.

def debImpl(expr: Expr[String])(using Quotes): Expr[Unit]
inline def debb(): Unit

Simplest Macro that shows source code position. Must include parenthesis debb(). Without the parenthesis the macro will not print.

Simplest Macro that shows source code position. Must include parenthesis debb(). Without the parenthesis the macro will not print.

def debbImpl(using Quotes): Expr[Unit]
inline def debexc(str: String): Nothing

Simple macro to create a debug Exception, inserts the String preceded by source code position.

Simple macro to create a debug Exception, inserts the String preceded by source code position.

def debexcImpl(expr: Expr[String])(using Quotes): Expr[Nothing]
inline def debvar(expr: Any): Unit

An expression debug macro. Prints out source code position followed by expression name, followed by expression value.

An expression debug macro. Prints out source code position followed by expression name, followed by expression value.

def debvarImpl(expr: Expr[Any])(using Quotes): Expr[Unit]
def eTry[A](res: => A): EMon[A]
def eqOf[A](leftValue: A, rightValues: A*): Boolean
def excep(str: => String): Nothing
def hypotenuse(side1: Double, side2: Double): Double

Gives the scalar hypotenuse length for a right angled triangle form the paramter lengths of the other 2 sides.

Gives the scalar hypotenuse length for a right angled triangle form the paramter lengths of the other 2 sides.

def iDblToMap[A, AA <: SeqImut[A]](iFrom: Double, iTo: Double, iStep: Double)(f: Double => A)(implicit ev: ArrBuilder[A, AA]): AA

Not sure if this correct. This might throw on iStep = 0.

Not sure if this correct. This might throw on iStep = 0.

def iToFlatMap[AA <: SeqImut[_]](iFrom: Int, iTo: Int, iStep: Int)(f: Int => AA)(implicit ev: ArrFlatBuilder[AA]): AA

flatMaps over a range of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1. Throws on non termination.

flatMaps over a range of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1. Throws on non termination.

def iToFoldInt(iFrom: Int, iTo: Int, iStep: Int, accInit: Int)(f: (Int, Int) => Int): Int

Folds over a range of Ints to an Int. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1. Throws on non termination.

Folds over a range of Ints to an Int. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1. Throws on non termination.

def iToFoldSumInt(iFrom: Int, iTo: Int, iStep: Int, accInit: Int)(f: Int => Int): Int

Folds over a range of Ints to an Int, adding the return Int value to the accumulator. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1. Throws on non termination.

Folds over a range of Ints to an Int, adding the return Int value to the accumulator. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1. Throws on non termination.

def iToForeach(iFrom: Int, iTo: Int, iStep: Int)(f: Int => Unit): Unit

foreachs over a range of integers from parameter 1 to parameter 2 in steps of parameter 3. Throws on non termination.

foreachs over a range of integers from parameter 1 to parameter 2 in steps of parameter 3. Throws on non termination.

def iToMap[A, AA <: SeqImut[A]](iFrom: Int, iTo: Int, iStep: Int)(f: Int => A)(implicit ev: ArrBuilder[A, AA]): AA

maps over a range of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1.

maps over a range of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step value is 1.

def iUntilFoldInt(iFrom: Int, iUntil: Int, iStep: Int, accInit: Int)(f: (Int, Int) => Int): Int

Folds over a range of Ints to an Int. From the start value until (while index is less than) the end value in integer steps. Default step value is 1.

Folds over a range of Ints to an Int. From the start value until (while index is less than) the end value in integer steps. Default step value is 1.

def iUntilFoldSumInt(iFrom: Int, iUntil: Int, iStep: Int, accInit: Int)(f: Int => Int): Int

Folds over a range of Ints to an Int adding the return Int value to the accumulator. From the start value until (while index is less than) the end value in integer steps. Default step value is 1.

Folds over a range of Ints to an Int adding the return Int value to the accumulator. From the start value until (while index is less than) the end value in integer steps. Default step value is 1.

def iUntilForeach(iFrom: Int, iUntil: Int, iStep: Int)(f: Int => Unit): Unit

foreachs over a range of integers from parameter 1 until parameter 2 (while index is less than) in steps of parameter 3. Throws on non termination.

foreachs over a range of integers from parameter 1 until parameter 2 (while index is less than) in steps of parameter 3. Throws on non termination.

def iUntilMap[A, AA <: SeqImut[A]](iFrom: Int, iUntil: Int, iStep: Int)(f: Int => A)(implicit ev: ArrBuilder[A, AA]): AA

Maps a range of Ints to an ArrImut[A]. From the start value until (while index is less than) the end value in integer steps. Default step value is 1. Throws on non termination.

Maps a range of Ints to an ArrImut[A]. From the start value until (while index is less than) the end value in integer steps. Default step value is 1. Throws on non termination.

def if2Excep[A](b1: Boolean, vTrue1: => A, b2: Boolean, vTrue2: => A, excepStr: => String): A
def if3Excep[A](b1: Boolean, vTrue1: => A, b2: Boolean, vTrue2: => A, b3: Boolean, vTrue3: => A, excepStr: => String): A
def ifExcep(b: Boolean, str: => String): Unit
inline def ife[A](b: Boolean, vTrue: => A, vFalse: => A): A

if-else. If the condition is true, use 2nd parameter, else use 3rd parameter.

if-else. If the condition is true, use 2nd parameter, else use 3rd parameter.

def ife2[A](b1: Boolean, vTrue1: => A, b2: => Boolean, vTrue2: => A, vElse: => A): A

if-elseif-else. If the first condition is true, use 2nd parameter, else if the second condition in parameter 3 is true use 4th parameter.

if-elseif-else. If the first condition is true, use 2nd parameter, else if the second condition in parameter 3 is true use 4th parameter.

def ife3[A](b1: Boolean, vTrue1: => A, b2: => Boolean, vTrue2: => A, b3: => Boolean, vTrue3: => A, vElse: => A): A
def ife4[A](b1: Boolean, vTrue1: => A, b2: => Boolean, vTrue2: => A, b3: => Boolean, vTrue3: => A, b4: => Boolean, vTrue4: => A, vElse: => A): A
def ife5[A](b1: Boolean, vTrue1: => A, b2: => Boolean, vTrue2: => A, b3: => Boolean, vTrue3: => A, b4: => Boolean, vTrue4: => A, b5: => Boolean, vTrue5: => A, vElse: => A): A
def ifne[A](b: Boolean, vNotTrue: => A, visTrue: => A): A

ifNot-else. If the condition is false, use 2nd parameter, else use 3rd parameter.

ifNot-else. If the condition is false, use 2nd parameter, else use 3rd parameter.

def ijSameToMap[A, AA <: SeqImut[A]](nFrom: Int, nTo: Int, nStep: Int)(f: (Int, Int) => A)(implicit ev: ArrBuilder[A, AA]): AA

ijToMap where i and j have identical ranges.

ijToMap where i and j have identical ranges.

def ijToForeach(iFrom: Int, iTo: Int, iStep: Int)(jFrom: Int, jTo: Int, jStep: Int)(f: (Int, Int) => Unit): Unit

2 dimensional from-to-step foreach loop. Throws on non termination.

2 dimensional from-to-step foreach loop. Throws on non termination.

def ijToMap[A, AA <: SeqImut[A]](iFrom: Int, iTo: Int, iStep: Int)(jFrom: Int, jTo: Int, jStep: Int)(f: (Int, Int) => A)(implicit ev: ArrBuilder[A, AA]): AA

2 dimensional map function. i is the index for the outer loop. j is the index for the inner loop. maps over 2 ranges of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step values are 1.

2 dimensional map function. i is the index for the outer loop. j is the index for the inner loop. maps over 2 ranges of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step values are 1.

def ijUntilForeach(iFrom: Int, iUntil: Int, iStep: Int)(jFrom: Int, jUntil: Int, jStep: Int)(f: (Int, Int) => Unit): Unit
def ijUntilMap[A, AA <: SeqImut[A]](iFrom: Int, iUntil: Int, iStep: Int)(jFrom: Int, jUntil: Int, jStep: Int)(f: (Int, Int) => A)(implicit ev: ArrBuilder[A, AA]): AA

2 dimensional map function. i is the index for the outer loop. j is the index for the inner loop. maps over 2 ranges of Ints to an ArrBase[A]. From the start value until (while index is less than) the end value in integer steps. Default step values are 1.

2 dimensional map function. i is the index for the outer loop. j is the index for the inner loop. maps over 2 ranges of Ints to an ArrBase[A]. From the start value until (while index is less than) the end value in integer steps. Default step values are 1.

def ijkToForeach(iFrom: Int, iTo: Int, iStep: Int)(jFrom: Int, jTo: Int, jStep: Int)(kFrom: Int, kTo: Int, kStep: Int)(f: (Int, Int, Int) => Unit): Unit

3 dimensional from-to-step foreach loop. Throws on non termination.

3 dimensional from-to-step foreach loop. Throws on non termination.

def ijkToMap[A, AA <: SeqImut[A]](iFrom: Int, iTo: Int, iStep: Int)(jFrom: Int, jTo: Int, jStep: Int)(kFrom: Int, kTo: Int, kStep: Int)(f: (Int, Int, Int) => A)(implicit ev: ArrBuilder[A, AA]): AA

2 dimensional map function. i is the index for the outer loop. j is the index for the inner loop. maps over 2 ranges of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step values are 1.

2 dimensional map function. i is the index for the outer loop. j is the index for the inner loop. maps over 2 ranges of Ints to an ArrBase[A]. From the start value to (while index is less than or equal to) the end value in integer steps. Default step values are 1.

inline def onlyIf[U](b: Boolean, vTrue: => Unit): Unit

onlyIf-do. Only if the condition is true, perform the effect.

onlyIf-do. Only if the condition is true, perform the effect.

def parseErr(fp: TextPosn, detail: String): String

Not sure about this method.

Not sure about this method.

inline def posnStr(): String

Macro for getting the file name and line number of the source code position.

Macro for getting the file name and line number of the source code position.

def posnStrImpl(using Quotes): Expr[String]
def readT[T](implicit ev: Persist[T]): T

Not sure what this method does.

Not sure what this method does.

def twoIntsToDouble(i1: Int, i2: Int): Double

Concrete fields

The cosine of 30 degrees or π/6 radians.

The cosine of 30 degrees or π/6 radians.

the cosine of 60 degrees or π/3 radians.

the cosine of 60 degrees or π/3 radians.

val Pi1: Double

Pi. This has been named Pi1 to avoid a name clash if math._ is imported.

Pi. This has been named Pi1 to avoid a name clash if math._ is imported.

val Pi2: Double

π/2

π/2

π/3

π/3

π/4

π/4

The sine of 30 degrees or π/6 radians.

The sine of 30 degrees or π/6 radians.

The sine of 60 degrees or π/3 radians.

The sine of 60 degrees or π/3 radians.

The square root of 2.

The square root of 2.

The square root of 3.

The square root of 3.

The tangent of 30 degrees or π/6 radians.

The tangent of 30 degrees or π/6 radians.

val two32: Long

Implicits

Implicits

implicit def AnyRefTypeToExtensions[T <: AnyRef](thisT: T): AnyRefTypeExtensions[T]
implicit def AnyTypeToExtensions[T](thisT: T): AnyTypeExtensions[T]
final implicit def ApproxImplicitClass[D, T](thisT: T)(implicit ev: ApproxT[D, T]): ApproxImplicitClass[D, T]

Extension methods for approximation type class.

Extension methods for approximation type class.

final implicit def ArrayBufferExtensions[A](thisBuff: ArrayBuffer[A])(implicit ct: ClassTag[A]): ArrayBufferExtensions[A]
final implicit def ArrayIntExtension(array: Array[Int]): ArrayIntExtension
final implicit def EqerImplicit[T](thisT: T)(implicit ev: EqT[T]): EqerImplicit[T]
final implicit def FunitRichImp(fu: () => Unit): FunitRichImp
final implicit def IterableAnyRefImplicit[A <: AnyRef](thisIter: Iterable[A])(implicit ct: ClassTag[A]): IterableAnyRefImplicit[A]
final implicit def RangeExtensions(range: Range): RangeExtensions
final implicit def RefBufferExtensions[A <: AnyRef](thisBuff: ArrayBuffer[A]): RefBufferExtensions[A]

Needs Changing.

Needs Changing.

final implicit def Tuple2Implicit[A1, A2](thisTuple: (A1, A2)): Tuple2Implicit[A1, A2]
implicit def arrayToExtensions[A](arr: Array[A]): ArrayExtensions[A]
implicit def charToExtensions(thisChar: Char): CharExtensions
implicit def iterableToExtensions[A](iter: Iterable[A]): IterableExtensions[A]
implicit def listToExtensions[A](thisList: List[A]): ListExtensions[A]
implicit def optionToExtension[A](thisOption: Option[A]): OptionExtensions[A]
implicit def seqToExtensions[A](thisSeq: Seq[A]): SeqExtensions[A]
implicit def show2TypeToExtensions[A1, A2, T](thisVal: T)(implicit ev: Show2T[A1, A2, T]): Show2TExtensions[A1, A2, T]
implicit def showTToExtensions[A](thisVal: A)(implicit ev: ShowT[A]): ShowTExtensions[A]