intellij-ton
intellij-ton copied to clipboard
Support Tact 1.4.0
trafficstars
The following is the list of IDE-relevant changes for Tact v1.4.0 which has been released. This issue is a follow-up on #177. The full changelog is here: https://github.com/tact-lang/tact/blob/main/CHANGELOG.md#140---2024-06-21.
New or changed syntax
- [ ] Unary bitwise NOT operation:
~. - [ ] Augmented assignment bitwise operators:
|=,&=,^=. - [ ]
foreachloop for theMaptype now works not only with simple identifiers, but with contract storage and struct fields too:foreach (k, v in self.map) {...}orforeach (k, v in struct.map) {...}. - [ ] Trailing semicolons in struct/message declarations are optional now:
struct Foo {x: Int}is valid syntax now. - [ ] Trailing semicolon in for the last statement in a block is optional now:
{ let x: Int = 42 }is valid syntax now. - [ ] Type annotation for
let-statements are optional now:let x = 42is valid syntax now.
stdlib functions
- [ ] Fixed the return type of
skipBitsin stdlib/std/cells.tact:extends mutates native skipBits(self: Slice, l: Int)(used to returnInt, now it'svoid). - [ ] New
loadBoolmethod for slices. - [ ] New
fromCellandfromSlicemethods for struct parsing. - [ ]
nativeThrowWhenhas been renamed tonativeThrowIf.
Tact v1.4.0 has just been released, looking forward to see it supported in Intellij TON!
Since Tact support is now implemented in a separate plugin (https://github.com/tact-lang/intelli-tact), this issue can be closed