لوا:الحصول على حرفية اسم المعلمة
سؤال
على سبيل المثال ،
function test (a)
name = nameof(a)
print(name)
end
test(def) --should print "def"
هل هناك أي لوا الحيل لتنفيذ شيء مماثل أعلاه ؟
غير أن أي شخص يحتاج إلى شرح لماذا أنها تريد أن تفعل شيئا ؛ بعض الناس الحصول على غاضب إذا لم تكن معينة على سبيل المثال الحياة الحقيقية.لذلك:
local function registerTestSuite(suite)
if (LUnit) then
LUnit:AddTestSuite(
HotNReady.."_"..GetVariableName(suite), --HotNReady_PizzaTestSuite
suite);
end;
end;
المحلول
ما كنت أطلب غير ممكن في نقي لوا.
إذا كنت حقا تحتاج هذه محاولة العبث Metalua.
نصائح أخرى
وحاول استخدام مكتبة التصحيح .
ويمكنك استخدام على debug.getlocal ([thread,] level, local)
لحصول على معلومات حول المتغير المحلي، بما في ذلك اسمها.
لا تنتمي إلى StackOverflow