From 399256ab6f75b364773c299847ad2c57a96a7c41 Mon Sep 17 00:00:00 2001 From: A404M Date: Fri, 11 Apr 2025 14:01:12 +0330 Subject: implement function overloading --- code/main.felan | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) (limited to 'code/main.felan') diff --git a/code/main.felan b/code/main.felan index e69dc7c..f9ba848 100644 --- a/code/main.felan +++ b/code/main.felan @@ -17,20 +17,32 @@ long_double :: f128; usize :: u64; - main :: () -> void { - a:u64 = 97; - b := @cast(a,u16); - putc @cast(a,u8); - putc @cast(b,u8); - // print_u64_rev(1234); + a :i64 = 12; + b :u64 = 34; + print_rev(a); + print_rev(b); + a(); +}; + +a :: () -> void { + putc 'x'; +}; + +print_rev :: (value:u64) -> void { + putc 'a'; + value := value; + while { + putc '0' + @cast(value % 10,u8); + value /= 10; + value != 0; + } {} }; -print_u64_rev :: (value:u64) -> void { +print_rev :: (value:i64) -> void { + putc 'b'; value := value; - first_time := true; while { - first_time = false; putc '0' + @cast(value % 10,u8); value /= 10; value != 0; -- cgit v1.2.3