Packages

final case class VersionTree extends AnyVal with Product with Serializable

The order preserving tree, containing all versions and satisfying following properties: - A version is _clustered_ with previous ones if higher group matches e.g. for 1-0-0 and 1-0-1 both higher groups (MODEL and REVISION) match e.g. for 1-0-1 and 1-1-0 only MODEL matches, so same MODEL cluster, but new REVISION cluster - A version spawns a new cluster if previous higher group is either smaller or larger e.g. 1-0-0, 1-1-0, 1-0-1 is a valid version list, but has three separate REVISION clusters - There's no gaps between versions (e.g. [1-0-0, 1-0-2] is impossible) - Tree is non-empty and always starts with 1-0-0

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyVal, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. VersionTree
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyVal
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    Any
  2. final def ##(): Int
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    Any
  4. def add(version: Full): Either[AddingError, VersionTree]

    Try to add a next version to the tree, which can be rejected if any properties don't hold

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def getClass(): Class[_ <: AnyVal]
    Definition Classes
    AnyVal → Any
  7. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  8. def modelGroupList(model: Model): Option[NonEmptyList[SchemaVer]]

    Get all SchemaVers in particular MODEL (used for migrations)

  9. val models: NonEmptyList[(Model, Revisions)]
  10. def show: String
  11. def versionList: VersionList

    Get all versions in their natural order

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyVal

Inherited from Any

Ungrouped