Package Documentation

Installation

Using sbt:

libraryDependencies += "io.github.charpov" %% "tiny-scala-utils" % "1.9.0"

Using Mill:

mvnDeps:
  - io.github.charpov:tiny-scala-utils::1.9.0
  - ...

(Adjust for other Maven-based tools.)

Note:

Starting with version 1.8, the library is hosted on Maven Central. For earlier versions, you need to use com.github instead of io.github and add a resolver:

Using sbt:

resolvers += "TinyScalaUtils" at "https://charpov.github.io/TinyScalaUtils/maven"
libraryDependencies += "com.github.charpov" %% "tiny-scala-utils" % "<version>"

Using Mill:

repositories: [https://charpov.github.io/TinyScalaUtils/maven]

Binary compatibility

Java 17 and Scala 3.3, or newer.

Structure

The library is organized in themed sub-packages:

  • lang: general stuff.
  • assertions: logical assertions, state/argument preconditions.
  • control: additional pseudo control structures.
  • collection: collection add-ons (infinite iterators, random selection, ...)
  • io: read/write text files, access resources.
  • text: text formatting, including thread/time information.
  • threads: concurrency stuff.
  • timing: timers, delayers, elapsed time calculation.
  • util: utility functions, fast random number generators.