supplement 2.7 → 2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/README +1 -1
  3. data/lib/supplement.c +19 -0
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ee9f6100fc65046c583652a23c7927e7449a5eeba493dfd27c309f9973fa9bc3
4
- data.tar.gz: f9a4598eb5d3acab86b12b56e10ee9cb4e27be679f1ff6823462135874427dea
3
+ metadata.gz: 2825ee080ba749d11e87d65ba7dda64ef001626dfbe0e933a45629141ca93cc0
4
+ data.tar.gz: cd583615f0885da98856f3afa55ecbd395f91ad17f120a36ce5ce13452861937
5
5
  SHA512:
6
- metadata.gz: 6640990fc0e8cc22621535f54dd61bbec1d835e3040a56668f7b2977fc104bc2142c2b9dfd94eb6033201d5ba52e7c151a6207ec9cb69dadf968fad7f448e7ee
7
- data.tar.gz: 5c8221565b5c6c7b1570bb35d628293f5872c2332ce6fee526341ee347e203c642fbdd699657ebe302af4784607406a017e86dfad33b0e497e03a341503138b3
6
+ metadata.gz: b57e2e4d42591fe003ca1d0dd1c1b160c2efb77e5cbb96446a391e08670ec6df4193d49493d2a85bcc3a9839461672adf47aa56a8a7790dd4e1e67aa2b10bd40
7
+ data.tar.gz: a37f03d5bdb59e0c82989b1c97eb78a8f965608e719f4bd74d587aaa5f0c5efac1e6276c6198a4062477d90fffeb15489c646ffa8117a296bb5e00b7255a0c89
data/README CHANGED
@@ -1,4 +1,4 @@
1
- = supplement 2.7 -- Useful Ruby enhancements
1
+ = supplement 2.8 -- Useful Ruby enhancements
2
2
 
3
3
 
4
4
  Some simple Ruby extensions.
data/lib/supplement.c CHANGED
@@ -171,6 +171,24 @@ rb_krn_tap_bang( VALUE obj)
171
171
  }
172
172
 
173
173
 
174
+ /*
175
+ * call-seq:
176
+ * do_with { |x| ... } -> obj
177
+ *
178
+ * Yields +x+ to the block.
179
+ * This difference to +tap+ is that the block's result will be returned.
180
+ *
181
+ * Use this to narrow your namespace.
182
+ *
183
+ */
184
+
185
+ VALUE
186
+ rb_krn_do_with( VALUE obj)
187
+ {
188
+ return rb_yield( obj);
189
+ }
190
+
191
+
174
192
  /*
175
193
  * Document-class: NilClass
176
194
  */
@@ -1500,6 +1518,7 @@ void Init_supplement( void)
1500
1518
  rb_define_method( rb_mKernel, "tap", rb_krn_tap, 0);
1501
1519
  #endif
1502
1520
  rb_define_method( rb_mKernel, "tap!", rb_krn_tap_bang, 0);
1521
+ rb_define_method( rb_mKernel, "do_with", rb_krn_do_with, 0);
1503
1522
 
1504
1523
  rb_define_method( rb_cNilClass, "notempty?", rb_nil_notempty_p, 0);
1505
1524
  rb_define_method( rb_cNilClass, "nonzero?", rb_nil_notempty_p, 0);
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: supplement
3
3
  version: !ruby/object:Gem::Version
4
- version: '2.7'
4
+ version: '2.8'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bertram Scharpf
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-13 00:00:00.000000000 Z
11
+ date: 2020-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: autorake