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

Properly implement pointer types & resolve pointers, arrays and AAs in output #725

Merged
merged 2 commits into from Mar 16, 2023

Conversation

WebFreak001
Copy link
Member

supersedes PR fix #715

@ryuukk this supersedes that PR you made that extended the type details to foo -> T syntax. I decided to only have the resolved type here, there is a fallback to use the function name on unknown types though. We could probably expose this information elsewhere though and show it somehow in serve-d.

@vushu there is a single UFCS line fix in here, which you probably want to include in your PR as well

If any of you could also review, that would be nice.

@vushu
Copy link
Contributor

vushu commented Mar 16, 2023

@WebFreak001 I have included your change to ufcs in my current PR.

Copy link
Contributor

@vushu vushu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, consider my suggestions.

- special DCD pointer symbols are actually inserted now
- they are implicitly dereferenced (max 1 deref) for member access
- index accessing them yields proper types (one pointer removed)
- they return standard type properties on pointer pointers
typeOf field is new tab-delimited field in dcd-client output, so you no
longer need to manually guess types / parse code. Calltips still yield
the actual written type, but in case of "auto", the typeOf column may
contain more useful info.
@WebFreak001 WebFreak001 merged commit 22f65d5 into dlang-community:master Mar 16, 2023
@WebFreak001 WebFreak001 deleted the improve-type-names branch March 16, 2023 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants