diff options
Diffstat (limited to 'code')
-rw-r--r-- | code/lib/operator.felan | 4 | ||||
-rw-r--r-- | code/main.felan | 29 |
2 files changed, 27 insertions, 6 deletions
diff --git a/code/lib/operator.felan b/code/lib/operator.felan index 998a053..5536343 100644 --- a/code/lib/operator.felan +++ b/code/lib/operator.felan @@ -578,7 +578,7 @@ __logical_not__ :: (value:bool) -> bool { return value == false; }; -__logical_and__ :: (left:bool,lazy right:bool) -> bool { +__logical_and__ :: (left:bool,right:bool) macro -> bool { if left == false { return false; } else if right == false { @@ -588,7 +588,7 @@ __logical_and__ :: (left:bool,lazy right:bool) -> bool { } }; -__logical_or__ :: (left:bool,lazy right:bool) -> bool { +__logical_or__ :: (left:bool,right:bool) macro -> bool { if left == true { return true; } else if right == true { diff --git a/code/main.felan b/code/main.felan index 150dc6d..b13442c 100644 --- a/code/main.felan +++ b/code/main.felan @@ -1,12 +1,33 @@ -@import("basic.felan"); +// @import("basic.felan"); +/* t :: (comptime b:u8) -> void { print(b); - print(a); +}; +*/ + +__equal__ :: (a:u8,b:u8) -> bool { + return @equal(a,b); +}; + +h :: (a:u8,b:u8) macro -> void { + if a == 0u8 { + if b == 0u8 { + @putc('0'); + }else{ + @putc('1'); + } + }else{ + @putc('2'); + } +}; + +f :: (a:u8,c:u8) -> u8 { + @putc(c); + return a; }; main :: () -> void { - a := 2u8; - t(5u8); + h(f(1u8,'a'),f(0u8,'b')); }; |