Files
bux-lang/examples/generic_infer.bux
T

26 lines
490 B
Plaintext

// Generic function type inference — calls without explicit type args
import Std::Io::{PrintLine, PrintInt};
func Max<T>(a: T, b: T) -> T {
if a > b {
return a;
} else {
return b;
}
}
func Main() -> int {
// Inferred: T = int
let m1: int = Max(10, 20);
let m2: int = Max(5, 3);
PrintLine("Max(10, 20) = ");
PrintInt(m1);
PrintLine("");
PrintLine("Max(5, 3) = ");
PrintInt(m2);
PrintLine("");
return 0;
}