Просто изменив string
Нет ничего проще.
string.lowercase = string.lower
РЕДАКТИРОВАТЬ: Как указал user3125367 (спасибо за это), мой второй ответ не работает, потому что setmetatable
не работает со строками. Хотя можно заставить его работать, обернув строку в таблицу и перенаправив вызовы методов, это кажется довольно неэффективным и похоже на то, что на самом деле сделает только программист Ruby.
В конце концов, лучший совет, который я могу вам дать: Не
Lua построен так, как он есть, и добавление пользовательских псевдонимов просто запутает людей, читающих ваш код. Если бы я увидел :uppercase()
где-то в кодовой базе, я бы предположил, что он ведет себя иначе, чем :upcase()
, и потратил бы впустую поиски того, что на самом деле делает.