on master help sign in
cleanup
commit8c2711fb6c2cda8b33952ec4b99ac21780f5b373 authoriko <mail@iko.soy> dateMon 26 Aug 2024, 22:52 (2 years ago) parentc1c5c03
1 file changed+4−9
nock/src/jets.rs+4−9
nock/src/jets.rs+4−9
@@ -90,17 +90,13 @@ pub type Jet = fn(ctx: &InterpreterContext, Rc<Noun>) -> Rc<Noun>;
9090
9191static BINARY_ATOM: fn(Rc<Noun>, fn(&Atom, &Atom) -> Atom) -> Rc<Noun> =
9292 |n: Rc<Noun>, f: fn(&Atom, &Atom) -> Atom| {
93− let Noun::Cell { p, q, .. } = (*n).clone() else {
94− panic!()
95− };
93+ let (p, q) = n.as_cell().unwrap();
9694 Rc::new(Noun::Atom(f(p.as_atom().unwrap(), q.as_atom().unwrap())))
9795 };
9896
9997static BINARY_ATOM_LOOB: fn(&InterpreterContext, Rc<Noun>, fn(&Atom, &Atom) -> bool) -> Rc<Noun> =
10098 |ctx: &InterpreterContext, n: Rc<Noun>, f: fn(&Atom, &Atom) -> bool| {
101− let Noun::Cell { p, q, .. } = (*n).clone() else {
102− panic!()
103− };
99+ let (p, q) = n.as_cell().unwrap();
104100
105101 if f(p.as_atom().unwrap(), q.as_atom().unwrap()) {
106102 ctx.nouns.sig.clone()
@@ -111,9 +107,8 @@ static BINARY_ATOM_LOOB: fn(&InterpreterContext, Rc<Noun>, fn(&Atom, &Atom) -> b
111107
112108static BINARY_ATOM_PAIR: fn(Rc<Noun>, fn(&Atom, &Atom) -> (Atom, Atom)) -> Rc<Noun> =
113109 |n: Rc<Noun>, f: fn(&Atom, &Atom) -> (Atom, Atom)| {
114− let Noun::Cell { p, q, .. } = (*n).clone() else {
115− panic!()
116− };
110+ let (p, q) = n.as_cell().unwrap();
111+
117112 let (a, b) = f(p.as_atom().unwrap(), q.as_atom().unwrap());
118113 cell(Rc::new(Noun::Atom(a)), Rc::new(Noun::Atom(b)))
119114 };