Signature Description
enum class exponential_decay_spec : unsigned char  {
     center_of_gravity = 1, // Decay = 1 / (1 + value),           for value >= 0
     span = 2,              // Decay = 2 / (1 + value),           for value >= 1
     halflife = 3,          // Decay = 1 − exp(log(0.5) / value), for value > 0
     fixed = 4,             // Decay = value,                     for 0 < value <= 1
};
This spec determines how an exponentially moving stat decays. It is used as a parameter to the ExponentialRollAdopter adopter constructor. Based on this spec, the value parameter is converted to decay.