Project

General

Profile

Bug #12177

Using `if:` as symbol in hash with new hash syntax in irb console is not working

Added by nielsks (Niels Kristian) over 1 year ago. Updated 7 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
[ruby-core:74338]

Description

Try running irb and past this in:

# This works
class TestClass
  @_alerts_config = {}

  class << self
    attr_accessor :_alerts_config
  end

  def self.monitor value_name, *args
    self._alerts_config[value_name] = args.first
  end

  monitor "test_attr", alert: "test@example.com", :if => Proc.new{|instance| instance.nil? }, with_message: "Some error"

end

This will work. However if the :if => is changed to if: then the syntax renders invalid.

# This does NOT work
class TestClass
  @_alerts_config = {}

  class << self
    attr_accessor :_alerts_config
  end

  def self.monitor value_name, *args
    self._alerts_config[value_name] = args.first
  end

  monitor "test_attr", alert: "test@example.com", if: Proc.new{|instance| instance.nil? }, with_message: "Some error"

end

Related issues

Has duplicate Ruby trunk - Bug #13012: irb fails to define a method with a reserved-word-ish keyword argument Closed

History

#1 [ruby-core:74484] Updated by shyouhei (Shyouhei Urabe) over 1 year ago

  • Status changed from Open to Assigned
  • Assignee set to keiju (Keiju Ishitsuka)

#2 Updated by nobu (Nobuyoshi Nakada) 7 months ago

  • Has duplicate Bug #13012: irb fails to define a method with a reserved-word-ish keyword argument added

#3 [ruby-core:79117] Updated by nobu (Nobuyoshi Nakada) 7 months ago

  • Status changed from Assigned to Closed

Also available in: Atom PDF