【问题标题】:Customize ArgumentError message in initialize method在初始化方法中自定义 ArgumentError 消息
【发布时间】:2014-01-15 01:07:00
【问题描述】:

与其让我的 Ruby 对象的构造函数抱怨给定的参数数量(在错误参数的情况下),我希望消息准确地列出预期的内容。

def initialize a, b, c
  begin
    @a = a
    @b = b
    @c = c
  rescue ArgumentError
    raise ArgumentError, "my custom error message"
  end
end

显然这行不通,但希望这能让你的想法得到理解。我只想覆盖这个类的默认 ArgumentError 消息。

【问题讨论】:

    标签: ruby class overriding argument-error


    【解决方案1】:
    def initialze(*args)
      raise ArgumentError, 'my message' unless valid_according_to_my_rules(args)
    
      @a, @b, @c = args
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-02
      • 2011-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多