logic_gate 0.4.0

Logic Gates
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
use super::{And, Or, Signal, Xor};
pub struct Adder;

impl Adder {
    pub fn send_signal(c: &Signal, a: &Signal, b: &Signal) -> (Signal, Signal) {
        let h = &Xor::send_signal(a, b);
        (
            Xor::send_signal(h, c),
            Or::send_signal(&And::send_signal(h, c), &And::send_signal(a, b)),
        )
    }
}