Fix tests

This commit is contained in:
Adam
2025-07-26 13:58:42 -07:00
parent e0f317e67e
commit faf8dedb1b
3 changed files with 32 additions and 9 deletions
+3 -3
View File
@@ -128,11 +128,11 @@ impl<'i, Root: Node<'i, I>, I: 'i + From<()>> ConsNode<I, Root> {
mod test { mod test {
use super::*; use super::*;
use crate::generic::FnNode; use crate::generic::FnNode;
use crate::value::ClonedNode; use crate::value::ValueRefNode;
#[test] #[test]
fn compose() { fn compose() {
let value = ClonedNode::new(4u32); let value = ValueRefNode::new(4u32);
let compose = value.then(FnNode::new(|x| x)); let compose = value.then(FnNode::new(|x| x));
assert_eq!(compose.eval(()), &4u32); assert_eq!(compose.eval(()), &4u32);
let type_erased = &compose as &dyn Node<'_, (), Output = &'_ u32>; let type_erased = &compose as &dyn Node<'_, (), Output = &'_ u32>;
@@ -141,7 +141,7 @@ mod test {
#[test] #[test]
fn test_ref_eval() { fn test_ref_eval() {
let value = ClonedNode::new(5); let value = ValueRefNode::new(5);
assert_eq!(value.eval(()), &5); assert_eq!(value.eval(()), &5);
let id = FnNode::new(|x| x); let id = FnNode::new(|x| x);
+23
View File
@@ -13,6 +13,29 @@ impl<'i, const N: u32, I> Node<'i, I> for IntNode<N> {
} }
} }
#[derive(Default, Debug, Clone, Copy)]
pub struct ValueRefNode<T>(pub T);
impl<'i, T: 'i, I> Node<'i, I> for ValueRefNode<T> {
type Output = &'i T;
#[inline(always)]
fn eval(&'i self, _input: I) -> Self::Output {
&self.0
}
}
impl<T> ValueRefNode<T> {
pub const fn new(value: T) -> ValueRefNode<T> {
ValueRefNode(value)
}
}
impl<T> From<T> for ValueRefNode<T> {
fn from(value: T) -> Self {
ValueRefNode::new(value)
}
}
#[derive(Default, Debug, Clone, Copy)] #[derive(Default, Debug, Clone, Copy)]
pub struct AsRefNode<T: AsRef<U>, U>(pub T, PhantomData<U>); pub struct AsRefNode<T: AsRef<U>, U>(pub T, PhantomData<U>);
+6 -6
View File
@@ -950,12 +950,12 @@ mod test {
assert_eq!( assert_eq!(
ids, ids,
vec![ vec![
NodeId(16997244687192517417), NodeId(12524483273268761808),
NodeId(12226224850522777131), NodeId(14274752063205226537),
NodeId(9162113827627229771), NodeId(7177002187999680489),
NodeId(12793582657066318419), NodeId(17211043138366459510),
NodeId(16945623684036608820), NodeId(6979825042154430163),
NodeId(2640415155091892458) NodeId(2888425170017482846)
] ]
); );
} }