reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
3100 str += "namespace {\n"; 3101 str += "struct "; str += name; 3101 str += "struct "; str += name; 3102 str += " {\n\t"; 3103 str += name; 3104 str += "(id receiver, SEL sel"; 3108 str += ", "; str += ArgName; 3108 str += ", "; str += ArgName; 3115 str += ", "; str += ArgName; 3115 str += ", "; str += ArgName; 3118 str += ") {\n"; 3119 str += "\t unsigned size = sizeof("; 3120 str += returnType.getAsString(Context->getPrintingPolicy()); str += ");\n"; 3120 str += returnType.getAsString(Context->getPrintingPolicy()); str += ");\n"; 3122 str += "\t if (size == 1 || size == 2 || size == 4 || size == 8)\n"; 3124 str += "\t s = (("; str += castType.getAsString(Context->getPrintingPolicy()); 3124 str += "\t s = (("; str += castType.getAsString(Context->getPrintingPolicy()); 3125 str += ")(void *)objc_msgSend)(receiver, sel"; 3127 str += ", arg"; str += utostr(i); 3127 str += ", arg"; str += utostr(i); 3131 str += ", arg"; str += utostr(i); 3131 str += ", arg"; str += utostr(i); 3133 str+= ");\n"; 3135 str += "\t else if (receiver == 0)\n"; 3136 str += "\t memset((void*)&s, 0, sizeof(s));\n"; 3137 str += "\t else\n"; 3139 str += "\t s = (("; str += castType.getAsString(Context->getPrintingPolicy()); 3139 str += "\t s = (("; str += castType.getAsString(Context->getPrintingPolicy()); 3140 str += ")(void *)objc_msgSend_stret)(receiver, sel"; 3142 str += ", arg"; str += utostr(i); 3142 str += ", arg"; str += utostr(i); 3146 str += ", arg"; str += utostr(i); 3146 str += ", arg"; str += utostr(i); 3148 str += ");\n"; 3150 str += "\t}\n"; 3151 str += "\t"; str += returnType.getAsString(Context->getPrintingPolicy()); 3151 str += "\t"; str += returnType.getAsString(Context->getPrintingPolicy()); 3152 str += " s;\n"; 3153 str += "};\n};\n\n"; 3162 InsertText(FunLocStart, str);