d575b74939
nac3standalone: add test for abs
5006028e2d
nac3core: abs builtin function
5455f9c201
nac3standalone: add test for abs
460f5f479b
fix
2a8347ffbc
nac3core: abs builtin function
1cc276cb43
nac3standalone: add test for max function
8241a29908
nac3core: max builtin function
e9a17cf8f8
nac3standalone: add test for min function
adb5c69e67
nac3core: min builtin function
Parser modification to handle
UAdd
in front of int constant
force-pushed to rebase on the latest master branch
e641fa6ebc
nac3parser: modify to handle UAdd in front of int constant
d848c2284e
nac3parser: fix broken tests
f7e62ab5b7
nac3ast/parser/core: use i128 for u64 constants
9f6c7b3359
nac3core: type conversion to/from uint
142e99a0f1
nac3core: fix broken tests
d848c2284e
nac3parser: fix broken tests
f7e62ab5b7
nac3ast/parser/core: use i128 for u64 constants
3ddfd85bf0
nac3parser: fix broken tests
d93bf93521
nac3ast/parser/core: use i128 for u64 constants
9f6c7b3359
nac3core: type conversion to/from uint
142e99a0f1
nac3core: fix broken tests
79c469301a
basic unsigned integer support
Parser modification to handle
UAdd
in front of int constant
50bc5ee361
nac3parser: fix broken tests
8692a5ed45
nac3ast/parser/core: use i128 for u64 constants
Unsigned Integer Support
Thanks for the suggestions! I will revert the changes and use i128::MAX
instead.
Unsigned Integer Support
as long as we are careful to handle a deeper ast representing integer constants in type check and codegen when we are traversing the ast.
Update: deeper ast for constant should be fine without…
e7df755435
parser modification to allow u64 constants
ff78b0935d
nac3core: type conversion to/from uint
fa1a7d38fd
nac3core: fix broken tests
5c44bdb611
basic unsigned integer support
8602852241
nac3core: use signed extension to convert i32 to i64
Unsigned Integer Support
What about making the parser represent:
- positive numbers that fit in
u64
asInt(Some(u64))
.- positive numbers that do not fit in
u64
asInt(None)
.- negative numbers…