this post was submitted on 27 Jul 2023
84 points (85.0% liked)
Programmer Humor
19706 readers
164 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I think you might be misunderstanding what this does.
You did a search for symbol references that contain "User" ignoring cases.
When you do a search for symbol references this way, Xcode will return two things:
And it did just that.
The first three .swift files show references to symbols that contain "User".
The forth one,
User.swift
, is in and of itself a symbol that matches the query and has symbols inside itself.The last one
UserViewModel.swift
is in itself a symbol as well and all the parts that are nested within that you've annotated with underscores and question marks, serve to give you context about the symbol "UserViewModel", hence the ellipses.It's essentially telling you "Hey I've found this symbol
UserViewModel
, it starts with a var namedusername
, has a bunch of stuff following that (i.e. …) then has an extension, then some more stuff (i.e. …) and then ends".Without knowing what's inside
UserViewModel.swift
I can't tell if it goofed with giving you a typical declaration, but that doesn't change the fact that its trying to give you context about a valid search result, the symbol UserViewModel, so that you can figure out if that's the one you're looking for.Keep in mind that variables are considered symbols as well, but in this instance I don't think that's what happened here, otherwise it would've been marked with a
P
instead of aC
.If this is not desired behavior then I suggest you switch from "Containing" to "Matching Word" or instead consider using the search bar at the bottom of the Symbol Navigator. Another option, if you're searching while going through code, is to right click on the symbol in your code and click
Find > Find Selected Symbol in Workspace
.Lastly it might be an idea to go over the Xcode documentation as a refresher. This would be a good starting point.
That said, Apple clearly feels that things can be improved by clarifying, because in the current Xcode beta they've changed the option label from
References
toSymbols
(and added a few more options).I'll be the first to admit that I am certainly no Xcode expert. So thank you for taking the time to explain how the reference/symbols search works.
Funny enough, that's what I did. Everything in the search window is what was selected by default in Xcode; probably why I was confused. I still contend it's not intuitive.
Yeah not sure why Find Selected Symbol defaults to contains instead of matching. My search results get polluted with other symbols when I search for example
MyStruct.image
andMyStruct
also has the propertyimageName
.Happy to see those new options in Xcode 15. Those seem really useful.