# Record Class SyFontDescription

java.lang.Object
java.lang.Record
com.io7m.jsycamore.api.text.SyFontDescription

Record Components:
  `family` - The font family, such as "IBM Plex Sans Mono"
  `style` - The font style
  `size` - The font size

public record SyFontDescription(String family, SyFontStyle style, int size) extends Record
A font description.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SyFontDescription(String family, SyFontStyle style, int size)`
  A font description.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final boolean`
  `equals(Object o)`
  Indicates whether some other object is "equal to" this one.
  `String`
  `family()`
  Returns the value of the `family` record component.
  `final int`
  `hashCode()`
  Returns a hash code value for this object.
  `String`
  `identifier()`
  Produce an identifier for this font, such as "IBM Plex Sans Mono Bold 16".
  `int`
  `size()`
  Returns the value of the `size` record component.
  `SyFontStyle`
  `style()`
  Returns the value of the `style` record component.
  `final String`
  `toString()`
  Returns a string representation of this record class.

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### SyFontDescription

    public SyFontDescription(String family, SyFontStyle style, int size)
    A font description.
    Parameters:
      `family` - The font family, such as "IBM Plex Sans Mono"
      `style` - The font style
      `size` - The font size

- ## Method Details

  - ### identifier

    public String identifier()
    Produce an identifier for this font, such as "IBM Plex Sans Mono Bold 16".
    Returns:
      An identifier for this font

  - ### toString

    public final String toString()
    Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
    Specified by:
      `toString` in class `Record`
    Returns:
      a string representation of this object

  - ### hashCode

    public final int hashCode()
    Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
    Specified by:
      `hashCode` in class `Record`
    Returns:
      a hash code value for this object

  - ### equals

    public final boolean equals(Object o)
    Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with `Objects::equals(Object,Object)`; primitive components are compared with the `compare` method from their corresponding wrapper classes.
    Specified by:
      `equals` in class `Record`
    Parameters:
      `o` - the object with which to compare
    Returns:
      `true` if this object is the same as the `o` argument; `false` otherwise.

  - ### family

    public String family()
    Returns the value of the `family` record component.
    Returns:
      the value of the `family` record component

  - ### style

    public SyFontStyle style()
    Returns the value of the `style` record component.
    Returns:
      the value of the `style` record component

  - ### size

    public int size()
    Returns the value of the `size` record component.
    Returns:
      the value of the `size` record component