mknil builtins

This commit is contained in:
Kasey White 2022-08-26 03:26:53 -04:00 committed by Kasey White
parent c34344ce21
commit 1a09a34873
2 changed files with 19 additions and 10 deletions

View File

@ -866,8 +866,14 @@ impl BuiltinCosts {
.cpu .cpu
.cost(args[0].to_ex_mem(), args[1].to_ex_mem()), .cost(args[0].to_ex_mem(), args[1].to_ex_mem()),
}, },
DefaultFunction::MkNilData => todo!(), DefaultFunction::MkNilData => ExBudget {
DefaultFunction::MkNilPairData => todo!(), mem: self.mk_nil_data.mem.cost(args[0].to_ex_mem()),
cpu: self.mk_nil_data.cpu.cost(args[0].to_ex_mem()),
},
DefaultFunction::MkNilPairData => ExBudget {
mem: self.mk_nil_pair_data.mem.cost(args[0].to_ex_mem()),
cpu: self.mk_nil_pair_data.cpu.cost(args[0].to_ex_mem()),
},
} }
} }
} }

View File

@ -128,8 +128,8 @@ impl DefaultFunction {
DefaultFunction::EqualsData => 2, DefaultFunction::EqualsData => 2,
DefaultFunction::SerialiseData => todo!(), DefaultFunction::SerialiseData => todo!(),
DefaultFunction::MkPairData => 2, DefaultFunction::MkPairData => 2,
DefaultFunction::MkNilData => todo!(), DefaultFunction::MkNilData => 1,
DefaultFunction::MkNilPairData => todo!(), DefaultFunction::MkNilPairData => 1,
} }
} }
@ -187,8 +187,8 @@ impl DefaultFunction {
DefaultFunction::EqualsData => 0, DefaultFunction::EqualsData => 0,
DefaultFunction::SerialiseData => todo!(), DefaultFunction::SerialiseData => todo!(),
DefaultFunction::MkPairData => 0, DefaultFunction::MkPairData => 0,
DefaultFunction::MkNilData => todo!(), DefaultFunction::MkNilData => 0,
DefaultFunction::MkNilPairData => todo!(), DefaultFunction::MkNilPairData => 0,
} }
} }
@ -290,8 +290,8 @@ impl DefaultFunction {
DefaultFunction::EqualsData => arg.expect_type(Type::Data), DefaultFunction::EqualsData => arg.expect_type(Type::Data),
DefaultFunction::SerialiseData => todo!(), DefaultFunction::SerialiseData => todo!(),
DefaultFunction::MkPairData => arg.expect_type(Type::Data), DefaultFunction::MkPairData => arg.expect_type(Type::Data),
DefaultFunction::MkNilData => todo!(), DefaultFunction::MkNilData => arg.expect_type(Type::Unit),
DefaultFunction::MkNilPairData => todo!(), DefaultFunction::MkNilPairData => arg.expect_type(Type::Unit),
} }
} }
@ -716,8 +716,11 @@ impl DefaultFunction {
} }
_ => unreachable!(), _ => unreachable!(),
}, },
DefaultFunction::MkNilData => todo!(), DefaultFunction::MkNilData => Ok(Value::Con(Constant::ProtoList(Type::Data, vec![]))),
DefaultFunction::MkNilPairData => todo!(), DefaultFunction::MkNilPairData => Ok(Value::Con(Constant::ProtoList(
Type::Pair(Box::new(Type::Data), Box::new(Type::Data)),
vec![],
))),
} }
} }
} }