Есть класс:
class Klass
def method1(opts={})
end
def method2(*args)
end
end
Если я хочу принимать от пользователя как названия методов, так и аргументы ({ "user_input": "method2('some, [evil], {parameters}')" }), достаточно ли будет ограничиться:
Klass.send(user_input_method_name, user_input_args) if user_input_method_name.in?(Klass.public_methods(false))
А внутри методов рассматривать аргументы только, в качестве строк?