Enum Class CLibraries

java.lang.Object
java.lang.Enum<CLibraries>
dev.hydraulic.types.machines.CLibraries
All Implemented Interfaces:
CLibrary, MachineCompatibilityAspect, Serializable, Comparable<CLibraries>, Constable

public enum CLibraries extends Enum<CLibraries> implements CLibrary
Enumerates glibc and muslc, the two C libraries that matter on Linux.
  • Enum Constant Details

    • GLIBC

      public static final CLibraries GLIBC
      The GNU C Library, also known just as "gnu".
    • MUSLC

      public static final CLibraries MUSLC
      The muslc library as used in Alpine Linux, aliased by "musl" and "alpine".
  • Field Details

    • ALIAS_MAP

      public static final Map<String,CLibrary> ALIAS_MAP
      An unmodifiable map of lower case names and aliases of well known operating systems.
  • Method Details

    • values

      public static CLibraries[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static CLibraries valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getDisplayName

      public String getDisplayName()
      Description copied from interface: MachineCompatibilityAspect
      Should return the display name of an operating system, suitable for presentation to humans. The display name may have unusual capitalization, slashes in the middle of it etc.
      Specified by:
      getDisplayName in interface MachineCompatibilityAspect
    • getIdentifier

      public String getIdentifier()
      Description copied from interface: MachineCompatibilityAspect
      The operating system name in a form suitable for use as an identifier in code or filing systems, i.e. all lower case with no punctuation or symbols.
      Specified by:
      getIdentifier in interface MachineCompatibilityAspect
    • getAliases

      public Set<String> getAliases()
      Description copied from interface: MachineCompatibilityAspect
      A set containing the identifier and any other strings that are widely used in the industry to identify this OS, all in lower case. Unlike MachineCompatibilityAspect.getIdentifier(), the strings returned here may contain punctuation or space characters.
      Specified by:
      getAliases in interface MachineCompatibilityAspect
    • getVendor

      public String getVendor()
      Description copied from interface: MachineCompatibilityAspect
      Returns the display name of the organization that makes this OS, or "Open source".
      Specified by:
      getVendor in interface MachineCompatibilityAspect