Package com.io7m.cardant.model

# Interface CATypeScalarType

All Known Implementing Classes:
  `CATypeScalarType.Integral`, `CATypeScalarType.Monetary`, `CATypeScalarType.Real`, `CATypeScalarType.Text`, `CATypeScalarType.Time`

public sealed interface CATypeScalarType permits CATypeScalarType.Time, CATypeScalarType.Real, CATypeScalarType.Integral, CATypeScalarType.Text, CATypeScalarType.Monetary
The type of scalar types.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static final record`
  `CATypeScalarType.Integral`
  An integer type.
  `static enum`
  `CATypeScalarType.Kind`
  The kind of scalar type.
  `static final record`
  `CATypeScalarType.Monetary`
  A monetary type.
  `static final record`
  `CATypeScalarType.Real`
  A real type.
  `static final record`
  `CATypeScalarType.Text`
  A text type.
  `static final record`
  `CATypeScalarType.Time`
  A time type.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `description()`
  `CATypeScalarType.Kind`
  `kind()`
  `com.io7m.lanark.core.RDottedName`
  `name()`
  `CATypePackageIdentifier`
  `packageIdentifier()`
  `String`
  `showConstraint()`
  `CATypeScalarType`
  `withName(com.io7m.lanark.core.RDottedName newName)`

- ## Method Details

  - ### packageIdentifier

    CATypePackageIdentifier packageIdentifier()
    Returns:
      The package to which this type belongs

  - ### withName

    CATypeScalarType withName(com.io7m.lanark.core.RDottedName newName)
    Parameters:
      `newName` - The new name
    Returns:
      This type with a new name

  - ### name

    com.io7m.lanark.core.RDottedName name()
    Returns:
      The type name

  - ### description

    String description()
    Returns:
      A humanly-readable description of the type

  - ### kind

    CATypeScalarType.Kind kind()
    Returns:
      The internal type kind

  - ### showConstraint

    String showConstraint()
    Returns:
      A humanly-readable description of this type's value constraints