OperatingSystemFamily (Gradle API 4.9)
Date: 2018-07-16

org.gradle.nativeplatform

## Class OperatingSystemFamily

- java.lang.Object
- - org.gradle.nativeplatform.OperatingSystemFamily

- All Implemented Interfaces:
    Named

      @Incubating
      public abstract class OperatingSystemFamily
      extends Object
      implements Named

  Represents the operating system of a configuration. Typical operating system include Windows, Linux, and macOS. This interface allows the user to customize operating systems by implementing this interface.
  Since:
    4.7

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Named

      `Named.Namer`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `LINUX` The Linux operating system family.
    `static String` | `MACOS` The macOS operating system family.
    `static Attribute<OperatingSystemFamily>` | `OPERATING_SYSTEM_ATTRIBUTE`
    `static String` | `WINDOWS` The Windows operating system family.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `OperatingSystemFamily()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract String` | `getName()` The object's name.
    `boolean` | `isLinux()` Is this the Linux operating system family?
    `boolean` | `isMacOs()` Is this the macOS operating system family?
    `boolean` | `isWindows()` Is this the Windows operating system family?

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### OPERATING_SYSTEM_ATTRIBUTE

          public static final Attribute<OperatingSystemFamily> OPERATING_SYSTEM_ATTRIBUTE

    - #### WINDOWS

          public static final String WINDOWS

      The Windows operating system family.
      Since:
        4.7
      See Also:
        Constant Field Values

    - #### LINUX

          public static final String LINUX

      The Linux operating system family.
      Since:
        4.7
      See Also:
        Constant Field Values

    - #### MACOS

          public static final String MACOS

      The macOS operating system family.
      Since:
        4.8
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### OperatingSystemFamily

          public OperatingSystemFamily()

  - ### Method Detail

    - #### getName

          @Input
          public abstract String getName()

      The object's name.

      Must be constant for the life of the object.

      Specified by:
        `getName` in interface `Named`
      Returns:
        The name. Never null.

    - #### isWindows

          public boolean isWindows()

      Is this the Windows operating system family?
      Since:
        4.8

    - #### isLinux

          public boolean isLinux()

      Is this the Linux operating system family?
      Since:
        4.8

    - #### isMacOs

          public boolean isMacOs()

      Is this the macOS operating system family?
      Since:
        4.8