|
<?php
|
|
|
|
namespace Zoomyboy\Gradient;
|
|
|
|
enum Prop
|
|
{
|
|
case LINEAR;
|
|
case WAVE;
|
|
|
|
public function calculatorCallback(): callable
|
|
{
|
|
return match ($this) {
|
|
static::LINEAR => fn ($i, $height) => $i / $height,
|
|
static::WAVE => fn ($i, $height) => abs(($i / $height) - 0.5),
|
|
};
|
|
}
|
|
}
|