-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Clean up and speed up symbol and type resolution #1766
Comments
oxisto
added a commit
that referenced
this issue
Oct 4, 2024
This adds two new functions `ScopeManager.lookupUniqueTypeSymbolByName` and `Reference.doesReferToType`. This harmonizes a lot of boilerplate code in type resolver, cxx extra pass and resolve ambuigity pass, which were all trying to achieve the same thing. Fixes #1766
oxisto
added a commit
that referenced
this issue
Oct 4, 2024
This adds two new functions `ScopeManager.lookupUniqueTypeSymbolByName` and `Reference.doesReferToType`. This harmonizes a lot of boilerplate code in type resolver, cxx extra pass and resolve ambuigity pass, which were all trying to achieve the same thing. Fixes #1766
oxisto
added a commit
that referenced
this issue
Oct 6, 2024
This adds two new functions `ScopeManager.lookupUniqueTypeSymbolByName` and `Reference.doesReferToType`. This harmonizes a lot of boilerplate code in type resolver, cxx extra pass and resolve ambuigity pass, which were all trying to achieve the same thing. Fixes #1766
maximiliankaul
pushed a commit
that referenced
this issue
Oct 8, 2024
* Add new function `lookupUniqueTypeSymbolByName` This adds two new functions `ScopeManager.lookupUniqueTypeSymbolByName` and `Reference.doesReferToType`. This harmonizes a lot of boilerplate code in type resolver, cxx extra pass and resolve ambuigity pass, which were all trying to achieve the same thing. Fixes #1766 * Fixed issue with Go test, more robust handling of wrapped references * Addressed code review
KuechA
added a commit
that referenced
this issue
Oct 18, 2024
* new node for RaiseStatement + NodeBuilder code * don't add python stuff in this branch * started work on EOG and DFG * doc * raise: fluent and first test * fluent: patch @oxisto * Start work on DFG test for raise * rename raise -> throw * more renaming raise -> throw * python: raise * copy & paste handleThrowOperator * Update cpg-core/src/test/kotlin/de/fraunhofer/aisec/cpg/graph/edges/flows/DataflowTest.kt Co-authored-by: KuechA <31155350+KuechA@users.noreply.github.com> * Rename `findSymbols` into `lookupSymbolByName` (#1772) * Rename `findSymbols` into `lookupSymbolByName` This PR renames `findSymbols` into `lookupSymbolByName` as a more appropriate name, because it lookups a symbol by its name. Fixes #1767 * Update cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/ScopeManager.kt Co-authored-by: KuechA <31155350+KuechA@users.noreply.github.com> * Added documentation --------- Co-authored-by: KuechA <31155350+KuechA@users.noreply.github.com> * Update dependency rollup to v4.24.0 (#1774) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Added language trait `HasImplicitReceiver` (#1778) Added language trait `HasImplicit Receiver` This is needed in preparation for #1777 to better handle access to fields/members of a class when an implicit receiver is used. * Cleanup of `SymbolResolver` (#1777) * Fixed crash in `getCodeOfSubregion` (#1776) * Add new function `lookupUniqueTypeSymbolByName` (#1781) * Add new function `lookupUniqueTypeSymbolByName` This adds two new functions `ScopeManager.lookupUniqueTypeSymbolByName` and `Reference.doesReferToType`. This harmonizes a lot of boilerplate code in type resolver, cxx extra pass and resolve ambuigity pass, which were all trying to achieve the same thing. Fixes #1766 * Fixed issue with Go test, more robust handling of wrapped references * Addressed code review * Make sure to move `typeObservers` from old to new node when replacing nodes (#1783) * Make sure to move `typeObservers` from old to new node when replacing nodes * Added doc for typeobservers * `implicit()` only triggers code/location update now if its not empty (#1784) Otherwise, we override the code/location again. * Added `:=` as simple operator in Python (#1785) Named expressions in Python use `:=` as operator. Therefore we need to include it in the language definition. Otherwise, the `access` value of a reference will not be set correctly. * code review * code review * code review * rename cause to parentException * doc * ThrowStatement: add toString * fix tests * Enable raising the exception in the with statement * Test * Test++ --------- Co-authored-by: KuechA <31155350+KuechA@users.noreply.github.com> Co-authored-by: Christian Banse <christian.banse@aisec.fraunhofer.de> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Alexander Kuechler <alexander.kuechler@aisec.fraunhofer.de>
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
Originated out of #1690, I decided to split up the original PR because it got too large to review.
The text was updated successfully, but these errors were encountered: