iowo/crates/rpl/src/instructions/mod.rs

41 lines
751 B
Rust

use serde::{Deserialize, Serialize};
pub mod read;
pub mod write;
#[derive(Serialize, Deserialize, PartialEq, Eq, Debug)]
pub enum Instruction {
Read(read::Read),
Write(write::Write),
Math(MathInstruction),
Blend(BlendInstruction),
Noise(NoiseInstruction),
}
#[derive(Serialize, Deserialize, PartialEq, Eq, Debug)]
pub enum MathInstruction {
Add,
Subtract,
Multiply,
Divide,
}
#[derive(Serialize, Deserialize, PartialEq, Eq, Debug)]
pub enum BlendInstruction {
Normal,
Multiply,
Additive,
Overlay,
Screen,
Subtractive,
Difference,
Darken,
Lighten,
}
#[derive(Serialize, Deserialize, PartialEq, Eq, Debug)]
pub enum NoiseInstruction {
Perlin,
Simplex,
Voronoi,
}