1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

merge revision(s) 53667,57735: [Backport #13148]

hash.c: exception examples

	* hash.c (rb_hash_dig): [DOC] add examples of exceptions.
	Fix doc for Hash#dig and Struct#dig

	* hash.c (rb_hash_dig): [DOC] correct argument name
	  in method description; fix formatting in examples.
	* struct.c (rb_struct_dig): ditto.

	[ruby-core:79221] [Bug #13148]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nagachika 2017-03-27 14:46:22 +00:00
parent 8231f5f706
commit 316f37b187
3 changed files with 10 additions and 8 deletions

10
hash.c
View file

@ -2699,17 +2699,19 @@ rb_hash_any_p(VALUE hash)
* call-seq:
* hsh.dig(key, ...) -> object
*
* Extracts the nested value specified by the sequence of <i>idx</i>
* Extracts the nested value specified by the sequence of <i>key</i>
* objects by calling +dig+ at each step, returning +nil+ if any
* intermediate step is +nil+.
*
* h = { foo: {bar: {baz: 1}}}
*
* h.dig(:foo, :bar, :baz) #=> 1
* h.dig(:foo, :zot, :xyz) #=> nil
* h.dig(:foo, :bar, :baz) #=> 1
* h.dig(:foo, :zot, :xyz) #=> nil
*
* g = { foo: [10, 11, 12] }
* g.dig(:foo, 1) #=> 11
* g.dig(:foo, 1) #=> 11
* g.dig(:foo, 1, 0) #=> TypeError: Fixnum does not have #dig method
* g.dig(:foo, :bar) #=> TypeError: no implicit conversion of Symbol into Integer
*/
VALUE

View file

@ -1133,15 +1133,15 @@ rb_struct_size(VALUE s)
* call-seq:
* struct.dig(key, ...) -> object
*
* Extracts the nested value specified by the sequence of <i>idx</i>
* Extracts the nested value specified by the sequence of +key+
* objects by calling +dig+ at each step, returning +nil+ if any
* intermediate step is +nil+.
*
* klass = Struct.new(:a)
* o = klass.new(klass.new({b: [1, 2, 3]}))
*
* o.dig(:a, :a, :b, 0) #=> 1
* o.dig(:b, 0) #=> nil
* o.dig(:a, :a, :b, 0) #=> 1
* o.dig(:b, 0) #=> nil
*/
static VALUE

View file

@ -1,6 +1,6 @@
#define RUBY_VERSION "2.3.3"
#define RUBY_RELEASE_DATE "2017-03-27"
#define RUBY_PATCHLEVEL 264
#define RUBY_PATCHLEVEL 265
#define RUBY_RELEASE_YEAR 2017
#define RUBY_RELEASE_MONTH 3