Xcode intellisense meaning of letters in colored boxes like f,T,C,M,P,C,K,# etc

Objective CIosXcodeXcode4Intellisense

Objective C Problem Overview


Recently, I have started using Xcode 4 for developing iOS apps.

In Xcode intellisense's autocomplete box, there are some letters in colored boxes before every suggestion. I know that they represent the property of the word we are typing like f,T,C,M,P,C,K,# etc. enter image description here

> Is there some kind of glossary available to find their quick meanings?

Meanings of f,C,T,# are understandable (function, class etc) but there are many others which I dont know. I assume these letters are standard across all IDEs like Visual Studio, Netbeans etc. Correct me if I am wrong.

Please suggest.

Objective C Solutions


Solution 1 - Objective C

In Xcode this is called "Code Sense". And these icons also exist in Xcode 3. These icons are also used in symbol navigation.

Red: macros

  • # = macro (think #define)

Brown: Core Data / namespace

  • C = modeled class

  • M = modeled method

  • P = modeled property

  • N = C++ namespace

Orange: aliased types

  • C with underscore = Objective-C category
  • E = enum
  • T = typedef / typealias
  • Ex = Swift extension

Green: variables

  • B = binding
  • f = function
  • F = field
  • K = constant
  • L = local variable
  • O = IBOutlet
  • V = variable (can be ivar, global var, local var, etc.)
  • x = parameter (think f(x))

Blue: methods

  • A = IBAction
  • M = method
  • P = property

Purple: aggregate types

  • C = class (Objective-C, Swift or C++)
  • CE = class extension
  • Pr = Objective-C/Swift protocol
  • S = struct
  • U = union

Gray: snippets

  • {} = snippets

Icons: #pragma mark or comments

  • Flag = !!!: ...
  • Patch = FIXME: ...
  • ? = ???: ...
  • Items = TODO: ...
  • List = MARK: ...

You should be able to look up the meanings from the filenames from /Developer/Library/PrivateFrameworks/DVTFoundation.framework/Resources/Xcode.SourceCodeSymbolKind.*.Icon.tiff*.

In later versions of Xcode, the path is moved to /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Resources/Assets.car, see https://stackoverflow.com/questions/22630418/analysing-assets-car-file-in-ios on how to extract the images from the *.car

Solution 2 - Objective C

I was searching for the meaning behind the "rM" icon. I finally found the answer (many thanks to kennytm):

The "rM" symbol represents a recursive method.

enter image description here

enter image description here

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionhiprakharView Question on Stackoverflow
Solution 1 - Objective CkennytmView Answer on Stackoverflow
Solution 2 - Objective CH. M. CoireView Answer on Stackoverflow