Lines Matching refs:Append
36 sb.Append("\n");
38 sb.Append("\n");
40 sb.Append("\n");
42 sb.Append("\n");
74 sb.Append("#include <cstdint>\n");
81 sb.Append("#include <string_ex.h>\n");
89 sb.Append("#include <vector>\n");
96 sb.Append("#include <unordered_map>\n");
109 sb.Append("#include <iremote_broker.h>\n");
111 sb.Append("#include \"hilog/log.h\"\n");
156 sb.Append("#include ").AppendFormat("\"%s.h\"\n", fileName.string());
164 sb.Append("#include ").AppendFormat("\"%s.h\"\n", fileName.string());
179 sb.Append("using ").AppendFormat("%s;\n", fullName.string());
191 sb.Append("using ").AppendFormat("%s;\n", fullName.string());
202 sb.Append("public:\n");
205 sb.Append("};\n");
212 sb.Append(TAB).AppendFormat("DECLARE_INTERFACE_DESCRIPTOR(u\"%s\");\n", nameWithoutPath.string());
213 sb.Append("\n");
224 sb.Append("\n");
234 sb.Append(prefix).AppendFormat("virtual ErrCode %s() = 0;\n", mm->name_);
236 sb.Append(prefix).AppendFormat("virtual ErrCode %s(\n", mm->name_);
241 sb.Append(",\n");
247 sb.Append(") = 0;\n");
253 sb.Append(prefix);
262 sb.Append(prefix).AppendFormat("%s result", EmitType(mt, ATTR_OUT, false).string());
267 sb.Append("protected:\n");
269 sb.Append(prefix).AppendFormat(
273 sb.Append(prefix).Append("const int VECTOR_MAX_SIZE = 102400;\n");
274 sb.Append(prefix).Append("const int LIST_MAX_SIZE = 102400;\n");
275 sb.Append(prefix).Append("const int MAP_MAX_SIZE = 102400;\n");
292 sb.Append("\n");
294 sb.Append("\n");
296 sb.Append("#include <iremote_proxy.h>\n");
298 sb.Append("#include \"api_cache_manager.h\"\n");
300 sb.Append("\n");
314 sb.Append("public:\n");
316 sb.Append("\n");
318 sb.Append("\n");
319 sb.Append("private:\n");
321 sb.Append("};\n");
327 sb.Append(prefix).Append("if (remote != nullptr) {\n");
328 sb.Append(prefix + TAB).Append("if (!remote->IsProxyObject()) {\n");
330 sb.Append(prefix + TAB + TAB).Append("HiLog::Error(LABEL, \"remote is not proxy object!\");\n");
332 sb.Append(prefix + TAB + TAB).Append("return;\n");
333 sb.Append(prefix + TAB).Append("}\n");
334 sb.Append(prefix + TAB).AppendFormat("deathRecipient_ = new (std::nothrow) %s(*this);\n",
336 sb.Append(prefix + TAB).Append("if (deathRecipient_ == nullptr) {\n");
338 sb.Append(prefix + TAB + TAB).Append("HiLog::Error(LABEL, \"deathRecipient_ is nullptr!\");\n");
340 sb.Append(prefix + TAB + TAB).Append("return;\n");
341 sb.Append(prefix + TAB).Append("}\n");
342 sb.Append(prefix + TAB).Append("if (!remote->AddDeathRecipient(deathRecipient_)) {\n");
344 sb.Append(prefix + TAB + TAB).Append("HiLog::Error(LABEL, \"AddDeathRecipient failed!\");\n");
346 sb.Append(prefix + TAB + TAB).Append("return;\n");
347 sb.Append(prefix + TAB).Append("}\n");
348 sb.Append(prefix + TAB).Append("remote_ = remote;\n");
349 sb.Append(prefix).Append("}\n");
354 sb.Append("\n");
364 sb.Append(prefix + TAB).AppendFormat(
368 sb.Append(prefix + TAB).AppendFormat(
373 sb.Append("\n");
379 sb.Append(prefix).Append("if (remote_ == nullptr) {\n");
380 sb.Append(prefix).Append(TAB).Append("return;\n");
381 sb.Append(prefix).Append("}\n");
382 sb.Append(prefix).Append("if (deathRecipient_ == nullptr) {\n");
383 sb.Append(prefix).Append(TAB).Append("return;\n");
384 sb.Append(prefix).Append("}\n");
385 sb.Append(prefix).Append("remote_->RemoveDeathRecipient(deathRecipient_);\n");
386 sb.Append(prefix).Append("remote_ = nullptr;\n");
388 sb.Append("\n");
392 sb.Append(prefix).AppendFormat(
402 sb.Append(prefix).AppendFormat("explicit %s(\n", proxyName_.string());
403 sb.Append(prefix + TAB).Append("const sptr<IRemoteObject>& remote)\n");
404 sb.Append(prefix + TAB).AppendFormat(": IRemoteProxy<%s>(remote)\n", interfaceName_.string());
405 sb.Append(prefix).Append("{");
407 sb.Append(prefix).Append("}\n\n");
408 sb.Append(prefix).AppendFormat("virtual ~%s()\n", proxyName_.string());
409 sb.Append(prefix).Append("{\n");
413 sb.Append(prefix).Append("}\n");
423 sb.Append("\n");
433 sb.Append(prefix).AppendFormat("ErrCode %s() override;\n", mm->name_);
435 sb.Append(prefix).AppendFormat("ErrCode %s(\n", mm->name_);
440 sb.Append(",\n");
446 sb.Append(") override;\n");
452 sb.Append(prefix).AppendFormat("class %s : public IRemoteObject::DeathRecipient {\n", deathRecipientName_.string());
453 sb.Append(prefix).Append("public:\n");
454 sb.Append(prefix + TAB).AppendFormat("explicit %s(%s &client) : client_(client) {}\n", deathRecipientName_.string(),
456 sb.Append(prefix + TAB).AppendFormat("~%s() override = default;\n", deathRecipientName_.string());
457 sb.Append(prefix + TAB).Append("void OnRemoteDied(const wptr<IRemoteObject> &remote) override\n");
458 sb.Append(prefix + TAB).Append("{\n");
459 sb.Append(prefix + TAB + TAB).Append("client_.OnRemoteDied(remote);\n");
460 sb.Append(prefix + TAB).Append("}\n");
461 sb.Append(prefix).Append("private:\n");
462 sb.Append(prefix + TAB).AppendFormat("%s &client_;\n", proxyName_.string());
463 sb.Append(prefix).Append("};\n\n");
465 sb.Append(prefix).Append("void OnRemoteDied(const wptr<IRemoteObject> &remoteObject)\n");
466 sb.Append(prefix).Append("{\n");
467 sb.Append(prefix + TAB).Append("(void)remoteObject;\n");
468 sb.Append(prefix + TAB).Append("ApiCacheManager::GetInstance().ClearCache(GetDescriptor());\n");
469 sb.Append(prefix).Append("}\n");
470 sb.Append(prefix).Append("sptr<IRemoteObject> remote_ = nullptr;\n");
471 sb.Append(prefix).Append("sptr<IRemoteObject::DeathRecipient> deathRecipient_ = nullptr;\n");
480 sb.Append("\n");
481 sb.Append(prefix).AppendFormat("static inline BrokerDelegator<%s> delegator_;\n", proxyName_.string());
492 sb.Append("\n");
495 sb.Append("#include \"hilog/log.h\"\n");
498 sb.Append("#include \"hitrace_meter.h\"\n");
500 sb.Append("\n");
502 sb.Append("using OHOS::HiviewDFX::HiLog;\n\n");
521 sb.Append("\n");
531 sb.Append(prefix).AppendFormat("ErrCode %s::%s()\n", proxyName_.string(), mm->name_);
533 sb.Append(prefix).AppendFormat("ErrCode %s::%s(\n", proxyName_.string(), mm->name_);
538 sb.Append(",\n");
544 sb.Append(")\n");
552 sb.Append("\n");
553 sb.Append(prefix + TAB).AppendFormat(
556 sb.Append("\n");
557 sb.Append(prefix + TAB).Append("if (hitCache == true) {\n");
560 sb.Append(prefix + TAB + TAB).Append("return ERR_OK;\n");
561 sb.Append(prefix + TAB).Append("}\n\n");
567 sb.Append(prefix + TAB).AppendFormat(
574 sb.Append(prefix).Append("{\n");
576 sb.Append(prefix + TAB).AppendFormat("HITRACE_METER_NAME(%s, __PRETTY_FUNCTION__);\n",
579 sb.Append(prefix + TAB).Append("MessageParcel data;\n");
580 sb.Append(prefix + TAB).Append("MessageParcel reply;\n");
581 sb.Append(prefix + TAB).AppendFormat("MessageOption option(%s);\n",
583 sb.Append("\n");
584 sb.Append(prefix + TAB).Append("if (!data.WriteInterfaceToken(GetDescriptor())) {\n");
586 sb.Append(prefix + TAB).Append(TAB).Append("HiLog::Error(LABEL, \"Write interface token failed!\");\n");
588 sb.Append(prefix + TAB).Append(TAB).Append("return ERR_INVALID_VALUE;\n");
589 sb.Append(prefix + TAB).Append("}\n");
590 sb.Append("\n");
599 sb.Append(prefix + TAB).Append("sptr<IRemoteObject> remote = Remote();\n");
600 sb.Append(prefix + TAB).Append("if (remote == nullptr) {\n");
602 sb.Append(prefix + TAB).Append(TAB).Append("HiLog::Error(LABEL, \"Remote is nullptr!\");\n");
604 sb.Append(prefix + TAB).Append(TAB).Append("return ERR_INVALID_DATA;\n");
605 sb.Append(prefix + TAB).Append("}\n\n");
606 sb.Append(prefix + TAB).AppendFormat("int32_t result = remote->SendRequest(COMMAND_%s, data, reply, option);\n",
608 sb.Append(prefix + TAB).Append("if (FAILED(result)) {\n");
610 sb.Append(prefix + TAB).Append(TAB).Append("HiLog::Error(LABEL, \"Send request failed!\");\n");
612 sb.Append(prefix + TAB).Append(" return result;\n");
613 sb.Append(prefix + TAB).Append("}\n");
615 sb.Append(prefix).Append("}\n");
620 sb.Append(prefix + TAB).Append("ErrCode errCode = reply.ReadInt32();\n");
621 sb.Append(prefix + TAB).Append("if (FAILED(errCode)) {\n");
623 sb.Append(prefix + TAB + TAB).Append("HiLog::Error(LABEL, \"Read Int32 failed!\");\n");
625 sb.Append(prefix + TAB).Append(" return errCode;\n");
626 sb.Append(prefix + TAB).Append("}\n");
647 sb.Append("\n");
653 sb.Append(prefix + TAB).Append("return ERR_OK;\n");
686 sb.Append("\n");
688 sb.Append("\n");
690 sb.Append("#include <iremote_stub.h>\n");
691 sb.Append("\n");
705 sb.Append("public:\n");
707 sb.Append("\n");
708 sb.Append("private:\n");
710 sb.Append("};\n");
716 sb.Append(prefix).Append("int32_t OnRemoteRequest(\n");
717 sb.Append(prefix + TAB).Append("uint32_t code,\n");
718 sb.Append(prefix + TAB).Append("MessageParcel& data,\n");
719 sb.Append(prefix + TAB).Append("MessageParcel& reply,\n");
720 sb.Append(prefix + TAB).Append("MessageOption& option) override;\n");
736 sb.Append("\n");
739 sb.Append("#include \"hilog/log.h\"\n");
742 sb.Append("#include \"hitrace_meter.h\"\n");
744 sb.Append("\n");
746 sb.Append("using OHOS::HiviewDFX::HiLog;\n\n");
760 sb.Append(prefix).AppendFormat("int32_t %s::OnRemoteRequest(\n", stubName_.string());
761 sb.Append(prefix + TAB).Append("uint32_t code,\n");
762 sb.Append(prefix + TAB).Append("MessageParcel& data,\n");
763 sb.Append(prefix + TAB).Append("MessageParcel& reply,\n");
764 sb.Append(prefix + TAB).Append("MessageOption& option)\n");
765 sb.Append(prefix).Append("{\n");
767 sb.Append(prefix + TAB).AppendFormat("HITRACE_METER_NAME(%s, __PRETTY_FUNCTION__);\n",
770 sb.Append(prefix + TAB).Append("std::u16string localDescriptor = GetDescriptor();\n");
771 sb.Append(prefix + TAB).Append("std::u16string remoteDescriptor = data.ReadInterfaceToken();\n");
772 sb.Append(prefix + TAB).Append("if (localDescriptor != remoteDescriptor) {\n");
773 sb.Append(prefix + TAB).Append(TAB).Append("return ERR_TRANSACTION_FAILED;\n");
774 sb.Append(prefix + TAB).Append("}\n");
775 sb.Append(prefix + TAB).Append("switch (code) {\n");
780 sb.Append(prefix + TAB).Append(TAB).Append("default:\n");
781 sb.Append(prefix + TAB).Append(TAB).Append(TAB).Append(
783 sb.Append(prefix + TAB).Append("}\n\n");
784 sb.Append(prefix + TAB).Append("return ERR_TRANSACTION_FAILED;\n");
785 sb.Append(prefix).Append("}\n");
793 sb.Append(prefix + TAB).AppendFormat("%s result = nullptr;\n",
796 sb.Append(prefix + TAB).AppendFormat("%s result;\n", EmitType(returnType, ATTR_IN, true).string());
800 sb.Append(prefix + TAB).AppendFormat("ErrCode errCode = %s();\n", mm->name_);
802 sb.Append(prefix + TAB).AppendFormat("ErrCode errCode = %s(", mm->name_);
812 sb.Append(parameterName.c_str());
814 sb.Append(name.c_str());
818 sb.Append(", ");
830 sb.Append(prefix).AppendFormat("case COMMAND_%s: {\n", ConstantName(mm->name_).string());
847 sb.Append(prefix + TAB).Append("if (!reply.WriteInt32(errCode)) {\n");
849 sb.Append(prefix + TAB).Append(TAB).Append("HiLog::Error(LABEL, \"Write Int32 failed!\");\n");
851 sb.Append(prefix + TAB).Append(TAB).Append("return ERR_INVALID_VALUE;\n");
852 sb.Append(prefix + TAB).Append("}\n");
861 sb.Append(prefix + TAB).Append("if (SUCCEEDED(errCode)) {\n");
871 sb.Append(prefix + TAB).Append("}\n");
873 sb.Append(prefix + TAB).Append("return ERR_NONE;\n");
874 sb.Append(prefix).Append("}\n");
881 sb.Append(prefix).AppendFormat("static constexpr int32_t COMMAND_%s = MIN_TRANSACTION_ID + %d;\n",
888 sb.Append(metaInterface_->license_).Append("\n");
894 sb.Append("#ifndef ").Append(macroName).Append("\n");
895 sb.Append("#define ").Append(macroName).Append("\n");
901 sb.Append("#endif // ").Append(macroName).Append("\n\n");
932 sb.Append(prefix).AppendFormat("if (!%sWriteInt32(%s ? 1 : 0)) {\n", parcelName.string(), name.c_str());
934 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
937 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
938 sb.Append(prefix).Append("}\n");
944 sb.Append(prefix).AppendFormat("if (!%sWriteInt32(%s)) {\n", parcelName.string(), name.c_str());
946 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
949 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
950 sb.Append(prefix).Append("}\n");
953 sb.Append(prefix).AppendFormat("if (!%sWriteInt64(%s)) {\n", parcelName.string(), name.c_str());
955 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
958 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
959 sb.Append(prefix).Append("}\n");
972 sb.Append(prefix).AppendFormat("if (!%sWriteFloat(%s)) {\n", parcelName.string(), name.c_str());
974 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
977 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
978 sb.Append(prefix).Append("}\n");
981 sb.Append(prefix).AppendFormat("if (!%sWriteDouble(%s)) {\n", parcelName.string(), name.c_str());
983 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
986 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
987 sb.Append(prefix).Append("}\n");
1001 sb.Append(prefix).AppendFormat("if (%s.size() > static_cast<size_t>(VECTOR_MAX_SIZE)) {\n", name.c_str());
1004 sb.Append(prefix).Append(TAB).Append(
1007 sb.Append(prefix).Append(TAB).AppendFormat(
1011 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1012 sb.Append(prefix).Append("}\n");
1013 sb.Append(prefix).AppendFormat("%sWriteInt32(%s.size());\n", parcelName.string(), name.c_str());
1014 sb.Append(prefix).AppendFormat("for (auto it = %s.begin(); it != %s.end(); ++it) {\n",
1019 sb.Append(prefix).Append("}\n");
1024 sb.Append(prefix).AppendFormat("if (%s.size() > static_cast<size_t>(MAP_MAX_SIZE)) {\n", name.c_str());
1026 sb.Append(prefix).Append(TAB).AppendFormat(
1029 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1030 sb.Append(prefix).Append("}\n");
1031 sb.Append("\n");
1032 sb.Append(prefix).AppendFormat("%sWriteInt32(%s.size());\n", parcelName.string(), name.c_str());
1033 sb.Append(prefix).AppendFormat("for (auto it = %s.begin(); it != %s.end(); ++it) {\n",
1039 sb.Append(prefix).Append("}\n");
1053 sb.Append(prefix).AppendFormat("if (!%sWriteString16(Str8ToStr16(%s))) {\n", parcelName.string(),
1056 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
1059 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1060 sb.Append(prefix).Append("}\n");
1063 sb.Append(prefix).AppendFormat("if (!%sWriteParcelable(&%s)) {\n", parcelName.string(), name.c_str());
1065 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
1068 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1069 sb.Append(prefix).Append("}\n");
1072 sb.Append(prefix).AppendFormat("if (%s == nullptr) {\n", name.c_str());
1074 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"%s is nullptr!\");\n", name.c_str());
1076 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1077 sb.Append(prefix).Append("}\n");
1078 sb.Append(prefix).AppendFormat(
1081 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Write [%s] failed!\");\n",
1084 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1085 sb.Append(prefix).Append("}\n");
1098 sb.Append(prefix).AppendFormat("%s %s = %sReadInt32() == 1 ? true : false;\n",
1101 sb.Append(prefix).AppendFormat("%s = %sReadInt32() == 1 ? true : false;\n",
1109 sb.Append(prefix).AppendFormat("%s %s = (%s)%sReadInt32();\n", EmitType(mt, ATTR_IN, true).string(),
1112 sb.Append(prefix).AppendFormat("%s = (%s)%sReadInt32();\n", name.c_str(),
1118 sb.Append(prefix).AppendFormat("%s %s = %sReadInt32();\n",
1121 sb.Append(prefix).AppendFormat("%s = %sReadInt32();\n", name.c_str(), parcelName.string());
1126 sb.Append(prefix).AppendFormat("%s %s = %sReadInt64();\n",
1129 sb.Append(prefix).AppendFormat("%s = %sReadInt64();\n", name.c_str(), parcelName.string());
1144 sb.Append(prefix).AppendFormat("%s %s = %sReadFloat();\n",
1147 sb.Append(prefix).AppendFormat("%s = %sReadFloat();\n", name.c_str(), parcelName.string());
1152 sb.Append(prefix).AppendFormat("%s %s = %sReadDouble();\n",
1155 sb.Append(prefix).AppendFormat("%s = %sReadDouble();\n", name.c_str(), parcelName.string());
1170 sb.Append(prefix).AppendFormat("%s %s = Str16ToStr8(%sReadString16());\n",
1173 sb.Append(prefix).AppendFormat("%s = Str16ToStr8(%sReadString16());\n",
1179 sb.Append(prefix).AppendFormat("%s %s;\n", EmitType(mt, ATTR_IN, true).string(), name.c_str());
1181 sb.Append(prefix).AppendFormat("int32_t %sSize = %sReadInt32();\n", name.c_str(), parcelName.string());
1182 sb.Append(prefix).AppendFormat("for (int32_t i = 0; i < %sSize; ++i) {\n", name.c_str());
1187 sb.Append(prefix + TAB).AppendFormat("%s[key] = value;\n", name.c_str());
1188 sb.Append(prefix).Append("}\n");
1204 sb.Append(prefix).AppendFormat("%s %s;\n", EmitType(mt, ATTR_IN, true).string(), name.c_str());
1206 sb.Append(prefix).AppendFormat("int32_t %sSize = %sReadInt32();\n", name.c_str(), parcelName.string());
1207 sb.Append(prefix).AppendFormat("if (%sSize > static_cast<int32_t>(VECTOR_MAX_SIZE)) {\n", name.c_str());
1209 sb.Append(prefix + TAB)
1210 .Append("HiLog::Error(LABEL, \"The vector/array size exceeds the security limit!\");\n");
1212 sb.Append(prefix + TAB).Append("return ERR_INVALID_DATA;\n");
1213 sb.Append(prefix).Append("}\n");
1219 sb.Append(prefix).AppendFormat("for (int32_t %s = 0; %s < %sSize; ++%s) {\n",
1224 sb.Append(prefix + TAB).AppendFormat("%s.push_back(*%s);\n", name.c_str(), valueStr.c_str());
1226 sb.Append(prefix + TAB).AppendFormat("%s.push_back(%s);\n", name.c_str(), valueStr.c_str());
1228 sb.Append(prefix).Append("}\n");
1248 sb.Append(prefix).AppendFormat("std::unique_ptr<%s> %s(%sReadParcelable<%s>());\n\n",
1250 sb.Append(prefix).AppendFormat("if (!%s) {\n", name.c_str());
1252 sb.Append(prefix).Append(TAB).AppendFormat(
1255 sb.Append(prefix).Append(TAB).Append("return ERR_INVALID_DATA;\n");
1256 sb.Append(prefix).Append("}\n");
1258 sb.Append(prefix).AppendFormat("std::unique_ptr<%s> info(%sReadParcelable<%s>());\n",
1260 sb.Append(prefix).Append("if (info != nullptr) {\n");
1261 sb.Append(prefix).Append(TAB).AppendFormat("%s = *info;\n", name.c_str());
1262 sb.Append(prefix).Append("}\n\n");
1269 sb.Append(prefix).AppendFormat("%s %s = iface_cast<%s>(%sReadRemoteObject());\n",
1271 sb.Append(prefix).AppendFormat("if (%s == nullptr) {\n", name.c_str());
1273 sb.Append(prefix).Append(TAB).AppendFormat("HiLog::Error(LABEL, \"Read [%s] failed!\");\n",
1276 sb.Append(prefix).Append(TAB).AppendFormat("return ERR_INVALID_DATA;\n");
1277 sb.Append(prefix).Append("}\n\n");
1279 sb.Append(prefix).AppendFormat("%s = iface_cast<%s>(%sReadRemoteObject());\n",
1296 sb.Append(prefix).AppendFormat("%s %s;\n", EmitType(mt, ATTR_IN, true).string(), name.c_str());
1298 sb.Append(prefix).AppendFormat("%s %s;\n", EmitType(mt, ATTR_IN, true).string(), name.c_str());
1319 sb.Append(name);
1533 sb.Append('_');
1535 sb.Append(tolower(c));
1537 sb.Append(c);
1566 sb.Append('_');
1568 sb.Append(c);
1570 sb.Append(toupper(c));