ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:92513] [Ruby trunk Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
@ 2019-05-01 13:52 ` mtsmfm
  2019-05-01 17:09 ` [ruby-core:92518] " ruby-core
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 9+ messages in thread
From: mtsmfm @ 2019-05-01 13:52 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been reported by mtsmfm (Fumiaki Matsushima).

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:92518] [Ruby trunk Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
  2019-05-01 13:52 ` [ruby-core:92513] [Ruby trunk Feature#15815] Add option to raise NoMethodError for OpenStruct mtsmfm
@ 2019-05-01 17:09 ` ruby-core
  2019-05-01 17:47 ` [ruby-core:92519] " shevegen
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 9+ messages in thread
From: ruby-core @ 2019-05-01 17:09 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by marcandre (Marc-Andre Lafortune).


It's hard to decide on features of `OpenStruct` as it's somewhat an antipattern.

Note that you might be able to write `users.map{@[:id]}` in the next version and avoid using an `OpenStruct` altogether.

That being said, I am wondering if a frozen `OpenStruct` could possibly raise an error upon reading an undefined key.

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-77882

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:92519] [Ruby trunk Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
  2019-05-01 13:52 ` [ruby-core:92513] [Ruby trunk Feature#15815] Add option to raise NoMethodError for OpenStruct mtsmfm
  2019-05-01 17:09 ` [ruby-core:92518] " ruby-core
@ 2019-05-01 17:47 ` shevegen
  2019-07-29  6:37 ` [ruby-core:93965] [Ruby master " ko1
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 9+ messages in thread
From: shevegen @ 2019-05-01 17:47 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by shevegen (Robert A. Heiler).


> Note that you might be able to write users.map{@[:id]} in the next version and
> avoid using an OpenStruct altogether.

I think that the idiom, or "mental mode", e. g. how users use ruby, is a bit different
between the two examples. At the least to me, "OpenStruct" is instantly recognizable
and "exception: true" is also no longer a rare idiom, after some core methods accepted
it; the map {@[:id] variant, at the least to me, is slightly harder to understand for
my brain. But anyway, that's just my opinion - to the suggestion itself, one described
use case:

> But I want to prevent typo for a key name. 

Although I personally do not use struct and openstruct a lot, even though I think it is
a cool idea (prototypical objects all the way, at all times), to me the suggestion appears
useful. So I am in light support of the suggestion; I don't feel particularly strong
either way, though. (May help for people to comment who actually use struct and openstruct
a lot.)

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-77883

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:93965] [Ruby master Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
                   ` (2 preceding siblings ...)
  2019-05-01 17:47 ` [ruby-core:92519] " shevegen
@ 2019-07-29  6:37 ` ko1
  2019-08-13  9:30 ` [ruby-core:94320] " mtsmfm
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 9+ messages in thread
From: ko1 @ 2019-07-29  6:37 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by ko1 (Koichi Sasada).


mtsmfm-san, if you are interest about this ticket yet, could you file on our dev-meeting agenda?
https://bugs.ruby-lang.org/issues/15996

Thanks.

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-80156

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:94320] [Ruby master Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
                   ` (3 preceding siblings ...)
  2019-07-29  6:37 ` [ruby-core:93965] [Ruby master " ko1
@ 2019-08-13  9:30 ` mtsmfm
  2019-08-13 10:15 ` [ruby-core:94321] " manga.osyo
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 9+ messages in thread
From: mtsmfm @ 2019-08-13  9:30 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by mtsmfm (Fumiaki Matsushima).


koi-san

Sorry for being late.
I've added https://bugs.ruby-lang.org/issues/15996?next_issue_id=15993&prev_issue_id=15998#note-17

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-80707

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:94321] [Ruby master Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
                   ` (4 preceding siblings ...)
  2019-08-13  9:30 ` [ruby-core:94320] " mtsmfm
@ 2019-08-13 10:15 ` manga.osyo
  2019-08-23 22:41 ` [ruby-core:94514] " esparta
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 9+ messages in thread
From: manga.osyo @ 2019-08-13 10:15 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by osyo (manga osyo).


What about adding block arguments to `OpenStruct.new` like `Hash` instead of options?

```ruby
h = Hash.new {|hash, key|
  raise(IndexError, "hash[#{key}] has no value")
}

# Error: in `block in <main>': hash[1] has no value (IndexError)
h[1]


require "ostruct"

# Adding block arguments like Hash
os = OpenStruct.new({a: 1}) {|open_struct, method_name|
  raise(NoMethdError, "undefined method `#{method_name}' for #{open_struct}")
}

# Error: in `block in <main>': undefined method `b' for #<OpenStruct a=1> (NoMethodError)
os.b
```


----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-80708

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:94514] [Ruby master Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
                   ` (5 preceding siblings ...)
  2019-08-13 10:15 ` [ruby-core:94321] " manga.osyo
@ 2019-08-23 22:41 ` esparta
  2019-08-29  7:09 ` [ruby-core:94656] " matz
  2019-10-25 19:32 ` [ruby-core:95550] " ruby-core
  8 siblings, 0 replies; 9+ messages in thread
From: esparta @ 2019-08-23 22:41 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by esparta (Espartaco Palma).


Personally I found the proposed signature confusing, more when taking in account that OpenStruct calls:

```ruby
os = OpenStruct.new(a: 1, exception: true)

# vs

os = OpenStruct.new({a: 1}, exception: true)

```

> I'd like to add exception option to raise NoMethodError in such case.

> ``` ruby
> require 'ostruct'
> os = OpenStruct.new({a: 1}, exception: true)
> os.a #=> 1
> os.b #=> NoMethodError
> ```

How about a subclass of OpenStruct to take this feature?

``` ruby
class ExceptionalOpenStruct < OpenStruct
   def method_missing(mid, *args)
      if args.length == 0
         raise NoMethodError unless @table.key?(mid)
        @table[mid]
      else
         super
      end
   end
end

eostr = ExceptionalOpenStruct.new(a: 1)
eostr.a 
# => 1
eostr.b
# NoMethodError: NoMethodError
ebstr.b = 2
eostr.b
# => 2
```
(I'm probably missing some feature, but that's the idea...)

Another concern is probably the performance: OpenStruct  will check another branch just to verify if now it also need to raise an exception.
The flexibility of OpenStruct makes it not exactly fast, handling exception would make all other uses cases more slow performance wise.[*benchmark needed]

osyo (manga osyo) wrote:
> What about adding block arguments to `OpenStruct.new` like `Hash` instead of options?
> 
> ```ruby
> h = Hash.new {|hash, key|
>   raise(IndexError, "hash[#{key}] has no value")
> }
> 
> # Error: in `block in <main>': hash[1] has no value (IndexError)
> h[1]
> 
> 
> require "ostruct"
> 
> # Adding block arguments like Hash
> os = OpenStruct.new({a: 1}) {|open_struct, method_name|
>   raise(NoMethdError, "undefined method `#{method_name}' for #{open_struct}")
> }
> 
> # Error: in `block in <main>': undefined method `b' for #<OpenStruct a=1> (NoMethodError)
> os.b
> ```



----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-80950

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:94656] [Ruby master Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
                   ` (6 preceding siblings ...)
  2019-08-23 22:41 ` [ruby-core:94514] " esparta
@ 2019-08-29  7:09 ` matz
  2019-10-25 19:32 ` [ruby-core:95550] " ruby-core
  8 siblings, 0 replies; 9+ messages in thread
From: matz @ 2019-08-29  7:09 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by matz (Yukihiro Matsumoto).


I like the idea. It's up to  @marcandre

Matz.

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-81255

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [ruby-core:95550] [Ruby master Feature#15815] Add option to raise NoMethodError for OpenStruct
       [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
                   ` (7 preceding siblings ...)
  2019-08-29  7:09 ` [ruby-core:94656] " matz
@ 2019-10-25 19:32 ` ruby-core
  8 siblings, 0 replies; 9+ messages in thread
From: ruby-core @ 2019-10-25 19:32 UTC (permalink / raw)
  To: ruby-core

Issue #15815 has been updated by marcandre (Marc-Andre Lafortune).

Assignee set to marcandre (Marc-Andre Lafortune)

----------------------------------------
Feature #15815: Add option to raise NoMethodError for OpenStruct
https://bugs.ruby-lang.org/issues/15815#change-82327

* Author: mtsmfm (Fumiaki Matsushima)
* Status: Open
* Priority: Normal
* Assignee: marcandre (Marc-Andre Lafortune)
* Target version: 
----------------------------------------
GitHub PR: https://github.com/ruby/ruby/pull/2164

Currently, `OpenStruct#method_missing` returns `nil` even if the key isn't registered.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1})
os.a #=> 1
os.b #=> nil
```

I'd like to add `exception` option to raise `NoMethodError` in such case.

```ruby
require 'ostruct'
os = OpenStruct.new({a: 1}, exception: true)
os.a #=> 1
os.b #=> NoMethodError
```

## Use case

I sometimes use OpenStruct as a JSON API response wrapper.
It's useful to use method call instead of key access (`obj[:key]`) because we can use `Symbol#to_proc` if it's a method (for example `users.map(&:id)`)

But I want to prevent typo for a key name. Currently `users.map(&:idd)` just returns `[nil,...]`

Even if we have this `exception` option, we can't enable this option for JSON parser easily though:

```ruby
JSON.parse(response, object_class: Class.new(OpenStruct) { def initialize(hash); super(hash, exception: true); end })
```

What do you think?

----

I've searched with "openstruct nomethoderror" on bugs.ruby-lang.org though, please let me know if it's duplicated.
https://bugs.ruby-lang.org/search?utf8=%E2%9C%93&scope=&q=nomethoderror+openstruct



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2019-10-25 19:32 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <redmine.issue-15815.20190501135220@ruby-lang.org>
2019-05-01 13:52 ` [ruby-core:92513] [Ruby trunk Feature#15815] Add option to raise NoMethodError for OpenStruct mtsmfm
2019-05-01 17:09 ` [ruby-core:92518] " ruby-core
2019-05-01 17:47 ` [ruby-core:92519] " shevegen
2019-07-29  6:37 ` [ruby-core:93965] [Ruby master " ko1
2019-08-13  9:30 ` [ruby-core:94320] " mtsmfm
2019-08-13 10:15 ` [ruby-core:94321] " manga.osyo
2019-08-23 22:41 ` [ruby-core:94514] " esparta
2019-08-29  7:09 ` [ruby-core:94656] " matz
2019-10-25 19:32 ` [ruby-core:95550] " ruby-core

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).