Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow nullable types in "extends mutates" functions #70

Closed
ProgramCrafter opened this issue Oct 12, 2023 · 3 comments · Fixed by #854
Closed

Allow nullable types in "extends mutates" functions #70

ProgramCrafter opened this issue Oct 12, 2023 · 3 comments · Fixed by #854
Assignees
Milestone

Comments

@ProgramCrafter
Copy link

TVM dictionaries are nullable cells. To work with them, methods need to accept Cell?, and it's currently impossible to mark such function "extends mutates", leading to constructions like dict = udict_store_ref(dict, 256, "name".sha256(), ...);.

@anton-trunov anton-trunov added this to the v1.4.0 milestone Feb 16, 2024
@Gusarich
Copy link
Member

Gusarich commented Jun 8, 2024

@ProgramCrafter why are you using manually defined udict_store_ref function instead of .set map method?

@anton-trunov anton-trunov modified the milestones: v1.4.0, v1.5.0 Jun 12, 2024
@ProgramCrafter
Copy link
Author

@Gusarich at that point I totally wasn't aware of .set method.

Though, I'd still like option to have methods on Cell? to work on dynamically-sized-keys map.

@Gusarich
Copy link
Member

Though, I'd still like option to have methods on Cell? to work on dynamically-sized-keys map.

In which case do you have a variable of type Cell instead of Map that should still be treated as a Map?

@anton-trunov anton-trunov modified the milestones: v1.5.0, v1.6.0 Jul 30, 2024
@anton-trunov anton-trunov added the scope: maps The map datatype and operations on it label Aug 22, 2024
@Gusarich Gusarich added typechecker and removed scope: maps The map datatype and operations on it labels Sep 19, 2024
@Gusarich Gusarich self-assigned this Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants