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

this expression #1107

Closed
lars-reimann opened this issue Apr 26, 2024 · 1 comment · Fixed by #1111
Closed

this expression #1107

lars-reimann opened this issue Apr 26, 2024 · 1 comment · Fixed by #1111
Assignees
Labels
released Included in a release
Milestone

Comments

@lars-reimann
Copy link
Member

In order to call another method of a class to compute a default value, we need a way to reference the current instance.

Add this as another primary expression. Its type should be the type of the current class. It should only be usable in default values of class methods.

@lars-reimann lars-reimann self-assigned this Apr 26, 2024
@lars-reimann lars-reimann added this to the v0.14.0 milestone Apr 26, 2024
@lars-reimann lars-reimann linked a pull request Apr 27, 2024 that will close this issue
lars-reimann added a commit that referenced this issue Apr 27, 2024
Closes #1107
Closes #1110

### Summary of Changes

* Add `this` expression to access the current instance when specifying
default values of parameters.
* Assign receiver of dynamic calls to a variable and reference it later,
instead of computing it again wherever it's used.
lars-reimann pushed a commit that referenced this issue May 2, 2024
## [0.14.0](v0.13.0...v0.14.0) (2024-05-02)

### Features

* `this` expression ([#1111](#1111)) ([c7bd0fa](c7bd0fa)), closes [#1107](#1107) [#1110](#1110)
* allow literal types as upper bounds of type parameters ([#1102](#1102)) ([c14159b](c14159b)), closes [#1081](#1081)
* Check truthiness of value ([#1131](#1131)) ([0b059a1](0b059a1))
* check usages of `@PythonName` and `@PythonCall` on overriding methods ([#1100](#1100)) ([3021166](3021166))
* partial code generation for multiple targets ([#1114](#1114)) ([5461a1b](5461a1b)), closes [#1079](#1079)
* Stubs for `safe-ds` version 0.22.1 ([#1130](#1130)) ([6f7100d](6f7100d))
* various methods to work with strings ([#1112](#1112)) ([b6d4f16](b6d4f16)), closes [#1108](#1108)
* visibility modifiers for any module member ([#1104](#1104)) ([3d43d38](3d43d38)), closes [#1083](#1083)

### Bug Fixes

* also handle literal types when computing upper bound ([#1103](#1103)) ([3f1ab6f](3f1ab6f)), closes [#1081](#1081)
@lars-reimann
Copy link
Member Author

🎉 This issue has been resolved in version 0.14.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@lars-reimann lars-reimann added the released Included in a release label May 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released Included in a release
Projects
Status: ✔️ Done
Development

Successfully merging a pull request may close this issue.

1 participant