|
|
|
|
|
by Kolja
1868 days ago
|
|
> I am curious to know the reasons behind the @as() syntax. What's wrong with "i32 y = (i32) x;"? Built-ins in Zig are functions beginning with `@`. Your cast operator would be a new syntax construct, something Zig tries to limit as much as possible (keeping the parser simple). > What type is "b"? i32? That's easy, i32. Integer literals are of type comptime_int, which may coerce into other integer types if possible without loss of information, and since the only typed expression is the @as, every other integer in the line will coerce to its type. |
|
For code that is not yours, or code that you open a year later, I think it's easier to specify the type. Exactly as when you see something like "var x = some_function();" and you need to know the type.