|
|
@@ -147,6 +147,13 @@ impl Circuit<bls12_381::Scalar> for LispCircuit {
|
|
|
let val = bls12_381::Scalar::from_string(&s.to_string());
|
|
|
left = left + (val, val_b);
|
|
|
}
|
|
|
+ MalVal::Func(_, _) => {
|
|
|
+ if let MalVal::Vector(val, _) = value.apply(vec![]).unwrap() {
|
|
|
+ if let MalVal::ZKScalar(res) = val.to_vec()[0] {
|
|
|
+ left = left + (res, val_b);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
_ => {
|
|
|
println!("not a valid param {:?}", value)
|
|
|
}
|
|
|
@@ -176,6 +183,13 @@ impl Circuit<bls12_381::Scalar> for LispCircuit {
|
|
|
let val = bls12_381::Scalar::from_string(&s.to_string());
|
|
|
right = right + (val, val_b);
|
|
|
}
|
|
|
+ MalVal::Func(_, _) => {
|
|
|
+ if let MalVal::Vector(val, _) = value.apply(vec![]).unwrap() {
|
|
|
+ if let MalVal::ZKScalar(res) = val.to_vec()[0] {
|
|
|
+ right = right + (res, val_b);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
_ => {
|
|
|
println!("not a valid param {:?}", value)
|
|
|
}
|
|
|
@@ -206,6 +220,13 @@ impl Circuit<bls12_381::Scalar> for LispCircuit {
|
|
|
let val = bls12_381::Scalar::from_string(&s.to_string());
|
|
|
output = output + (val, val_b);
|
|
|
}
|
|
|
+ MalVal::Func(_, _) => {
|
|
|
+ if let MalVal::Vector(val, _) = value.apply(vec![]).unwrap() {
|
|
|
+ if let MalVal::ZKScalar(res) = val.to_vec()[0] {
|
|
|
+ output = output + (res, val_b);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
_ => {
|
|
|
println!("not a valid param {:?}", value)
|
|
|
}
|