Packages

  • package root
    Definition Classes
    root
  • package lucuma
    Definition Classes
    root
  • package core
    Definition Classes
    lucuma
  • package data
    Definition Classes
    core
  • package enum
    Definition Classes
    core
  • package geom
    Definition Classes
    core
  • package instances

    Implicit instances for types defined outside of Gen.

    Implicit instances for types defined outside of Gen. Each set of instances is provided as a trait that can be extended and as a module whose members can be imported (preferred).

    Definition Classes
    core
  • package math

    Mathematical data types for general use, not specific to the Gem model.

    Mathematical data types for general use, not specific to the Gem model.

    Definition Classes
    core
  • package model
    Definition Classes
    core
  • package optics
    Definition Classes
    core
  • package parser
    Definition Classes
    core
  • package syntax

    Syntax classes for extension methods, organized à la cats.

    Syntax classes for extension methods, organized à la cats. Each syntax class has an associated conversion trait and module that extends it; and the all module which extends all conversions traits.

    Definition Classes
    core
  • package util
    Definition Classes
    core
  • Display
  • Enumerated
  • Gid
  • Obsoletable
  • Timestamp

package util

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. trait Display[A] extends AnyRef

    Typeclass for things that can be shown in a user interface.

  2. trait Enumerated[A] extends Order[A] with Encoder[A] with Decoder[A]

    Typeclass for an enumerated type with unique string tags and a canonical ordering.

  3. final class Gid[A] extends BoundedEnumerable[A] with Order[A] with Show[A] with Encoder[A] with Decoder[A]

    A typeclass for Lucuma identifiers, which are of the form T-26fd21b3 where T is a constant, type-specific tag and the remainder is a positive hex-encoded Long, with lowercase alpha digits and no leading zeros (thus having a unique string representation).

    A typeclass for Lucuma identifiers, which are of the form T-26fd21b3 where T is a constant, type-specific tag and the remainder is a positive hex-encoded Long, with lowercase alpha digits and no leading zeros (thus having a unique string representation).

    case class Foo(id: Foo.Id, ...)
    object Foo {
      case class Id(value: PosLong)
      object Id {
        implicit val GidId: Gid[Id] =
          Gid.instance('f', _.value, apply)
      }
    }

    Database tables can use such values as primary keys.

    CREATE DOMAIN foo_dom AS VARCHAR CHECK(VALUE ~ '^f-([1-9a-f][0-9a-f]*)$');
    CREATE SEQUENCE foo_seq START WITH 256;
    CREATE TABLE foo (
      foo_id  varchar NOT NULL PRIMARY KEY DEFAULT 'f-' || to_hex(nextval('foo_seq')),
      ...
    )
  4. trait Obsoletable[A] extends AnyRef

  5. sealed abstract case class Timestamp extends Product with Serializable

    Timestamp wraps a java.util.Instant that is truncated to microsecond resolution.

    Timestamp wraps a java.util.Instant that is truncated to microsecond resolution. This allows Timestamps to roundtrip to/from the database where only microsecond resolution is supported. In addition the min and max instants that are supported are determined by the postgres limit for timestamps.

Value Members

  1. object Display
  2. object Enumerated extends Serializable
  3. object Gid extends Serializable
  4. object Timestamp extends Serializable

Typeclasses

Ungrouped