use super::ActivationKind;
pub fn apply_activation_slice(kind: ActivationKind, input: &[f32], out: &mut [f32]) -> bool {
if out.len() < input.len() {
return false;
}
for i in 0..input.len() {
out[i] = kind.apply(input[i]);
}
true
}
pub fn activation_lut(kind: ActivationKind, start: f32, step: f32, out: &mut [f32]) -> bool {
if !start.is_finite() || !step.is_finite() {
return false;
}
for (i, v) in out.iter_mut().enumerate() {
*v = kind.apply(start + step * i as f32);
}
true
}