in commands/FBClassDump.py [0:0]
def decode(code):
encodeMap = {
"c": "char",
"i": "int",
"s": "short",
"l": "long",
"q": "long long",
"C": "unsigned char",
"I": "unsigned int",
"S": "unsigned short",
"L": "unsigned long",
"Q": "unsigned long long",
"f": "float",
"d": "double",
"B": "bool",
"v": "void",
"*": "char *",
"@": "id",
"#": "Class",
":": "SEL",
}
ret = code
if code in encodeMap:
ret = encodeMap[code]
elif ret[0:1] == "@":
if ret[1:2] == "?": # @? represent a block
ret = code
elif ret[2:3] == "<": # @"<aDelegate><bDelegate>"
ret = "id" + ret[2:-1].replace("><", ", ")
else:
ret = ret[2:-1] + " *"
elif ret[0:1] == "^":
ret = decode(ret[1:]) + " *"
return ret