RosettaCodeData/Task/Parametric-polymorphism/C3/parametric-polymorphism-1.c3

16 lines
275 B
Text
Raw Permalink Normal View History

2025-06-11 20:16:52 -04:00
module tree {Type};
2023-07-01 11:58:00 -04:00
struct Tree
{
Type value;
Tree* left;
Tree* right;
}
2023-08-01 14:30:30 -07:00
fn void Tree.replace_all(&self, Type new_value)
2023-07-01 11:58:00 -04:00
{
2023-08-01 14:30:30 -07:00
self.value = new_value;
if (self.left) self.left.replace_all(new_value);
if (self.right) self.right.replace_all(new_value);
2023-07-01 11:58:00 -04:00
}