class Sass::Value::Color::Space::Hsl

def bounded?

def bounded?
  true
end

def convert(dest, hue, saturation, lightness, alpha)

def convert(dest, hue, saturation, lightness, alpha)
  missing_lightness = lightness.nil?
  missing_chroma = saturation.nil?
  missing_hue = hue.nil?
  hue = ((hue.nil? ? 0 : hue) % 360) / 30.0
  saturation = (saturation.nil? ? 0 : saturation) / 100.0
  lightness = (lightness.nil? ? 0 : lightness) / 100.0
  a = saturation * [lightness, 1 - lightness].min
  f = lambda do |n|
    k = (n + hue) % 12
    lightness - (a * [-1, [k - 3, 9 - k, 1].min].max)
  end
  SRGB.convert(
    dest,
    f.call(0),
    f.call(8),
    f.call(4),
    alpha,
    missing_lightness:,
    missing_chroma:,
    missing_hue:
  )
end

def initialize

def initialize
  super('hsl', [
    Utils::HUE_CHANNEL,
    LinearChannel.new('saturation', 0, 100, requires_percent: true, lower_clamped: true).freeze,
    LinearChannel.new('lightness', 0, 100, requires_percent: true).freeze
  ].freeze)
end

def legacy?

def legacy?
  true
end

def polar?

def polar?
  true
end