enhanced_errors 3.0.3 → 3.0.5

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.
@@ -121,7 +121,7 @@
121
121
  <dt id="DEFAULT_MAX_CAPTURE_LENGTH-constant" class="">DEFAULT_MAX_CAPTURE_LENGTH =
122
122
 
123
123
  </dt>
124
- <dd><pre class="code"><span class='int'>2500</span></pre></dd>
124
+ <dd><pre class="code"><span class='int'>2200</span></pre></dd>
125
125
 
126
126
  <dt id="MAX_BINDING_INFOS-constant" class="">MAX_BINDING_INFOS =
127
127
 
@@ -154,13 +154,8 @@
154
154
 
155
155
  </dt>
156
156
  <dd><pre class="code"><span class='lbracket'>[</span>
157
- <span class='symbol'>:@new_record</span><span class='comma'>,</span>
158
- <span class='symbol'>:@attributes</span><span class='comma'>,</span>
159
157
  <span class='symbol'>:@association_cache</span><span class='comma'>,</span>
160
- <span class='symbol'>:@readonly</span><span class='comma'>,</span>
161
- <span class='symbol'>:@previously_new_record</span><span class='comma'>,</span>
162
158
  <span class='symbol'>:@_routes</span><span class='comma'>,</span>
163
- <span class='symbol'>:@routes</span><span class='comma'>,</span>
164
159
  <span class='symbol'>:@app</span><span class='comma'>,</span>
165
160
  <span class='symbol'>:@arel_table</span><span class='comma'>,</span>
166
161
  <span class='symbol'>:@assertion_instance</span><span class='comma'>,</span>
@@ -732,7 +727,7 @@
732
727
  <li class="public ">
733
728
  <span class="summary_signature">
734
729
 
735
- <a href="#max_capture_length=-class_method" title="max_capture_length= (class method)">.<strong>max_capture_length=</strong>(val) &#x21d2; Object </a>
730
+ <a href="#max_capture_length=-class_method" title="max_capture_length= (class method)">.<strong>max_capture_length=</strong>(value) &#x21d2; Object </a>
736
731
 
737
732
 
738
733
 
@@ -946,6 +941,30 @@
946
941
 
947
942
  <span class="summary_desc"><div class='inline'></div></span>
948
943
 
944
+ </li>
945
+
946
+
947
+ <li class="public ">
948
+ <span class="summary_signature">
949
+
950
+ <a href="#safe_to_inspect%3F-class_method" title="safe_to_inspect? (class method)">.<strong>safe_to_inspect?</strong>(obj) &#x21d2; Boolean </a>
951
+
952
+
953
+
954
+ </span>
955
+
956
+
957
+
958
+
959
+
960
+
961
+
962
+
963
+
964
+ <span class="summary_desc"><div class='inline'>
965
+ <p>Here, we are detecting BasicObject, which is surprisingly annoying.</p>
966
+ </div></span>
967
+
949
968
  </li>
950
969
 
951
970
 
@@ -1012,6 +1031,30 @@
1012
1031
 
1013
1032
  <span class="summary_desc"><div class='inline'></div></span>
1014
1033
 
1034
+ </li>
1035
+
1036
+
1037
+ <li class="public ">
1038
+ <span class="summary_signature">
1039
+
1040
+ <a href="#start_rspec_binding_trap-class_method" title="start_rspec_binding_trap (class method)">.<strong>start_rspec_binding_trap</strong> &#x21d2; Object </a>
1041
+
1042
+
1043
+
1044
+ </span>
1045
+
1046
+
1047
+
1048
+
1049
+
1050
+
1051
+
1052
+
1053
+
1054
+ <span class="summary_desc"><div class='inline'>
1055
+ <p>Behavior: Grabs the next rspec spec binding that goes by, and stops the more-expensive b_return trace.</p>
1056
+ </div></span>
1057
+
1015
1058
  </li>
1016
1059
 
1017
1060
 
@@ -1374,18 +1417,18 @@
1374
1417
  <pre class="lines">
1375
1418
 
1376
1419
 
1377
- 191
1378
- 192
1379
- 193
1380
- 194
1381
- 195</pre>
1420
+ 182
1421
+ 183
1422
+ 184
1423
+ 185
1424
+ 186</pre>
1382
1425
  </td>
1383
1426
  <td>
1384
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 191</span>
1427
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 182</span>
1385
1428
 
1386
1429
  <span class='kw'>def</span> <span class='id identifier rubyid_add_to_skip_list'>add_to_skip_list</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_vars'>vars</span><span class='rparen'>)</span>
1387
1430
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
1388
- <span class='ivar'>@skip_list</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span><span class='id identifier rubyid_vars'>vars</span><span class='rparen'>)</span>
1431
+ <span class='ivar'>@skip_list</span><span class='period'>.</span><span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_vars'>vars</span><span class='rparen'>)</span>
1389
1432
  <span class='kw'>end</span>
1390
1433
  <span class='kw'>end</span></pre>
1391
1434
  </td>
@@ -1415,22 +1458,16 @@
1415
1458
  467
1416
1459
  468
1417
1460
  469
1418
- 470
1419
- 471
1420
- 472
1421
- 473</pre>
1461
+ 470</pre>
1422
1462
  </td>
1423
1463
  <td>
1424
1464
  <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 463</span>
1425
1465
 
1426
1466
  <span class='kw'>def</span> <span class='id identifier rubyid_apply_skip_list'>apply_skip_list</span><span class='lparen'>(</span><span class='id identifier rubyid_binding_info'>binding_info</span><span class='rparen'>)</span>
1427
- <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
1428
- <span class='id identifier rubyid_variables'>variables</span> <span class='op'>=</span> <span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:variables</span><span class='rbracket'>]</span>
1429
- <span class='id identifier rubyid_variables'>variables</span><span class='lbracket'>[</span><span class='symbol'>:instances</span><span class='rbracket'>]</span><span class='op'>&amp;.</span><span class='id identifier rubyid_reject!'>reject!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='id identifier rubyid_skip_list'>skip_list</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_start_with?'>start_with?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>@_</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='ivar'>@debug</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1430
- <span class='id identifier rubyid_variables'>variables</span><span class='lbracket'>[</span><span class='symbol'>:locals</span><span class='rbracket'>]</span><span class='op'>&amp;.</span><span class='id identifier rubyid_reject!'>reject!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='id identifier rubyid_skip_list'>skip_list</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1431
- <span class='kw'>if</span> <span class='ivar'>@debug</span>
1432
- <span class='id identifier rubyid_variables'>variables</span><span class='lbracket'>[</span><span class='symbol'>:globals</span><span class='rbracket'>]</span><span class='op'>&amp;.</span><span class='id identifier rubyid_reject!'>reject!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='id identifier rubyid_skip_list'>skip_list</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1433
- <span class='kw'>end</span>
1467
+ <span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:variables</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='symbol'>:instances</span><span class='rbracket'>]</span><span class='op'>&amp;.</span><span class='id identifier rubyid_reject!'>reject!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='id identifier rubyid_skip_list'>skip_list</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='lbracket'>[</span><span class='int'>0</span><span class='comma'>,</span> <span class='int'>2</span><span class='rbracket'>]</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>@_</span><span class='tstring_end'>&#39;</span></span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='ivar'>@debug</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1468
+ <span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:variables</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='symbol'>:locals</span><span class='rbracket'>]</span><span class='op'>&amp;.</span><span class='id identifier rubyid_reject!'>reject!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='id identifier rubyid_skip_list'>skip_list</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1469
+ <span class='kw'>if</span> <span class='ivar'>@debug</span>
1470
+ <span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:variables</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='symbol'>:globals</span><span class='rbracket'>]</span><span class='op'>&amp;.</span><span class='id identifier rubyid_reject!'>reject!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='id identifier rubyid_skip_list'>skip_list</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1434
1471
  <span class='kw'>end</span>
1435
1472
  <span class='id identifier rubyid_binding_info'>binding_info</span>
1436
1473
  <span class='kw'>end</span></pre>
@@ -1454,11 +1491,6 @@
1454
1491
  <pre class="lines">
1455
1492
 
1456
1493
 
1457
- 482
1458
- 483
1459
- 484
1460
- 485
1461
- 486
1462
1494
  487
1463
1495
  488
1464
1496
  489
@@ -1497,10 +1529,15 @@
1497
1529
  522
1498
1530
  523
1499
1531
  524
1500
- 525</pre>
1532
+ 525
1533
+ 526
1534
+ 527
1535
+ 528
1536
+ 529
1537
+ 530</pre>
1501
1538
  </td>
1502
1539
  <td>
1503
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 482</span>
1540
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 487</span>
1504
1541
 
1505
1542
  <span class='kw'>def</span> <span class='id identifier rubyid_binding_info_string'>binding_info_string</span><span class='lparen'>(</span><span class='id identifier rubyid_binding_info'>binding_info</span><span class='rparen'>)</span>
1506
1543
  <span class='id identifier rubyid_exception'>exception</span> <span class='op'>=</span> <span class='id identifier rubyid_safe_to_s'>safe_to_s</span><span class='lparen'>(</span><span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:exception</span><span class='rbracket'>]</span><span class='rparen'>)</span>
@@ -1566,16 +1603,16 @@
1566
1603
  <pre class="lines">
1567
1604
 
1568
1605
 
1569
- 428
1570
- 429
1571
- 430
1572
- 431
1573
- 432
1574
1606
  433
1575
- 434</pre>
1607
+ 434
1608
+ 435
1609
+ 436
1610
+ 437
1611
+ 438
1612
+ 439</pre>
1576
1613
  </td>
1577
1614
  <td>
1578
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 428</span>
1615
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 433</span>
1579
1616
 
1580
1617
  <span class='kw'>def</span> <span class='id identifier rubyid_binding_infos_array_to_string'>binding_infos_array_to_string</span><span class='lparen'>(</span><span class='id identifier rubyid_captured_bindings'>captured_bindings</span><span class='comma'>,</span> <span class='id identifier rubyid_format'>format</span> <span class='op'>=</span> <span class='symbol'>:terminal</span><span class='rparen'>)</span>
1581
1618
  <span class='kw'>return</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_captured_bindings'>captured_bindings</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_captured_bindings'>captured_bindings</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
@@ -1604,12 +1641,12 @@
1604
1641
  <pre class="lines">
1605
1642
 
1606
1643
 
1607
- 122
1608
- 123
1609
- 124</pre>
1644
+ 117
1645
+ 118
1646
+ 119</pre>
1610
1647
  </td>
1611
1648
  <td>
1612
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 122</span>
1649
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 117</span>
1613
1650
 
1614
1651
  <span class='kw'>def</span> <span class='id identifier rubyid_capture_rescue'>capture_rescue</span>
1615
1652
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='lbrace'>{</span> <span class='ivar'>@capture_rescue</span> <span class='rbrace'>}</span>
@@ -1634,12 +1671,12 @@
1634
1671
  <pre class="lines">
1635
1672
 
1636
1673
 
1637
- 118
1638
- 119
1639
- 120</pre>
1674
+ 113
1675
+ 114
1676
+ 115</pre>
1640
1677
  </td>
1641
1678
  <td>
1642
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 118</span>
1679
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 113</span>
1643
1680
 
1644
1681
  <span class='kw'>def</span> <span class='id identifier rubyid_capture_rescue='>capture_rescue=</span><span class='lparen'>(</span><span class='id identifier rubyid_val'>val</span><span class='rparen'>)</span>
1645
1682
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='lbrace'>{</span> <span class='ivar'>@capture_rescue</span> <span class='op'>=</span> <span class='id identifier rubyid_val'>val</span> <span class='rbrace'>}</span>
@@ -1664,17 +1701,17 @@
1664
1701
  <pre class="lines">
1665
1702
 
1666
1703
 
1667
- 262
1668
- 263
1669
- 264
1670
- 265
1671
- 266
1672
- 267
1673
- 268
1674
- 269</pre>
1704
+ 255
1705
+ 256
1706
+ 257
1707
+ 258
1708
+ 259
1709
+ 260
1710
+ 261
1711
+ 262</pre>
1675
1712
  </td>
1676
1713
  <td>
1677
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 262</span>
1714
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 255</span>
1678
1715
 
1679
1716
  <span class='kw'>def</span> <span class='id identifier rubyid_class_to_string'>class_to_string</span><span class='lparen'>(</span><span class='id identifier rubyid_klass'>klass</span><span class='rparen'>)</span>
1680
1717
  <span class='kw'>return</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_klass'>klass</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
@@ -1704,9 +1741,6 @@
1704
1741
  <pre class="lines">
1705
1742
 
1706
1743
 
1707
- 325
1708
- 326
1709
- 327
1710
1744
  328
1711
1745
  329
1712
1746
  330
@@ -1743,10 +1777,15 @@
1743
1777
  361
1744
1778
  362
1745
1779
  363
1746
- 364</pre>
1780
+ 364
1781
+ 365
1782
+ 366
1783
+ 367
1784
+ 368
1785
+ 369</pre>
1747
1786
  </td>
1748
1787
  <td>
1749
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 325</span>
1788
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 328</span>
1750
1789
 
1751
1790
  <span class='kw'>def</span> <span class='id identifier rubyid_convert_binding_to_binding_info'>convert_binding_to_binding_info</span><span class='lparen'>(</span><span class='id identifier rubyid_b'>b</span><span class='comma'>,</span> <span class='label'>capture_let_variables:</span> <span class='kw'>true</span><span class='rparen'>)</span>
1752
1791
  <span class='id identifier rubyid_file'>file</span> <span class='op'>=</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_eval'>eval</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>__FILE__</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='kw'>rescue</span> <span class='kw'>nil</span>
@@ -1755,6 +1794,8 @@
1755
1794
 
1756
1795
  <span class='id identifier rubyid_locals'>locals</span> <span class='op'>=</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_local_variables'>local_variables</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='op'>|</span> <span class='lbracket'>[</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid_safe_local_variable_get'>safe_local_variable_get</span><span class='lparen'>(</span><span class='id identifier rubyid_b'>b</span><span class='comma'>,</span> <span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span>
1757
1796
  <span class='id identifier rubyid_receiver'>receiver</span> <span class='op'>=</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_receiver'>receiver</span>
1797
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_safe_to_inspect?'>safe_to_inspect?</span><span class='lparen'>(</span><span class='id identifier rubyid_receiver'>receiver</span><span class='rparen'>)</span>
1798
+
1758
1799
  <span class='id identifier rubyid_instance_vars'>instance_vars</span> <span class='op'>=</span> <span class='id identifier rubyid_receiver'>receiver</span><span class='period'>.</span><span class='id identifier rubyid_instance_variables'>instance_variables</span>
1759
1800
  <span class='id identifier rubyid_instances'>instances</span> <span class='op'>=</span> <span class='id identifier rubyid_instance_vars'>instance_vars</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_var'>var</span><span class='op'>|</span> <span class='lbracket'>[</span><span class='id identifier rubyid_var'>var</span><span class='comma'>,</span> <span class='id identifier rubyid_safe_instance_variable_get'>safe_instance_variable_get</span><span class='lparen'>(</span><span class='id identifier rubyid_receiver'>receiver</span><span class='comma'>,</span> <span class='id identifier rubyid_var'>var</span><span class='rparen'>)</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span>
1760
1801
 
@@ -1783,7 +1824,7 @@
1783
1824
  <span class='label'>globals:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
1784
1825
  <span class='rbrace'>}</span><span class='comma'>,</span>
1785
1826
  <span class='label'>exception:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>NoException</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1786
- <span class='label'>capture_event:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RSpecContext</span><span class='tstring_end'>&#39;</span></span>
1827
+ <span class='label'>capture_event:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_context</span><span class='tstring_end'>&#39;</span></span>
1787
1828
  <span class='rbrace'>}</span>
1788
1829
 
1789
1830
  <span class='id identifier rubyid_default_on_capture'>default_on_capture</span><span class='lparen'>(</span><span class='id identifier rubyid_binding_info'>binding_info</span><span class='rparen'>)</span>
@@ -1808,17 +1849,17 @@
1808
1849
  <pre class="lines">
1809
1850
 
1810
1851
 
1852
+ 129
1853
+ 130
1854
+ 131
1855
+ 132
1856
+ 133
1811
1857
  134
1812
1858
  135
1813
- 136
1814
- 137
1815
- 138
1816
- 139
1817
- 140
1818
- 141</pre>
1859
+ 136</pre>
1819
1860
  </td>
1820
1861
  <td>
1821
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 134</span>
1862
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 129</span>
1822
1863
 
1823
1864
  <span class='kw'>def</span> <span class='id identifier rubyid_disable_capturing!'>disable_capturing!</span>
1824
1865
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -1848,6 +1889,15 @@
1848
1889
  <pre class="lines">
1849
1890
 
1850
1891
 
1892
+ 188
1893
+ 189
1894
+ 190
1895
+ 191
1896
+ 192
1897
+ 193
1898
+ 194
1899
+ 195
1900
+ 196
1851
1901
  197
1852
1902
  198
1853
1903
  199
@@ -1878,20 +1928,14 @@
1878
1928
  224
1879
1929
  225
1880
1930
  226
1881
- 227
1882
- 228
1883
- 229
1884
- 230
1885
- 231
1886
- 232
1887
- 233
1888
- 234</pre>
1931
+ 227</pre>
1889
1932
  </td>
1890
1933
  <td>
1891
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 197</span>
1934
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 188</span>
1892
1935
 
1893
1936
  <span class='kw'>def</span> <span class='id identifier rubyid_enhance_exceptions!'>enhance_exceptions!</span><span class='lparen'>(</span><span class='label'>enabled:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>debug:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='label'>capture_events:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>override_messages:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
1894
1937
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
1938
+ <span class='id identifier rubyid_ensure_extensions_are_required'>ensure_extensions_are_required</span>
1895
1939
  <span class='ivar'>@exception_trace</span><span class='op'>&amp;.</span><span class='id identifier rubyid_disable'>disable</span>
1896
1940
  <span class='ivar'>@exception_trace</span> <span class='op'>=</span> <span class='kw'>nil</span>
1897
1941
 
@@ -1922,10 +1966,11 @@
1922
1966
 
1923
1967
  <span class='id identifier rubyid_events'>events</span> <span class='op'>=</span> <span class='ivar'>@capture_events</span> <span class='op'>?</span> <span class='ivar'>@capture_events</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span> <span class='op'>:</span> <span class='id identifier rubyid_default_capture_events'>default_capture_events</span>
1924
1968
  <span class='ivar'>@exception_trace</span> <span class='op'>=</span> <span class='const'>TracePoint</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_events'>events</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_tp'>tp</span><span class='op'>|</span>
1969
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_exception_is_handleable?'>exception_is_handleable?</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_raised_exception'>raised_exception</span><span class='rparen'>)</span>
1925
1970
  <span class='id identifier rubyid_handle_tracepoint_event'>handle_tracepoint_event</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='rparen'>)</span>
1926
1971
  <span class='kw'>end</span>
1927
1972
 
1928
- <span class='ivar'>@exception_trace</span><span class='period'>.</span><span class='id identifier rubyid_enable'>enable</span> <span class='kw'>if</span> <span class='ivar'>@enabled</span>
1973
+ <span class='ivar'>@exception_trace</span><span class='op'>&amp;.</span><span class='id identifier rubyid_enable'>enable</span> <span class='kw'>if</span> <span class='ivar'>@enabled</span>
1929
1974
  <span class='kw'>end</span>
1930
1975
  <span class='kw'>end</span></pre>
1931
1976
  </td>
@@ -1948,11 +1993,6 @@
1948
1993
  <pre class="lines">
1949
1994
 
1950
1995
 
1951
- 408
1952
- 409
1953
- 410
1954
- 411
1955
- 412
1956
1996
  413
1957
1997
  414
1958
1998
  415
@@ -1966,10 +2006,15 @@
1966
2006
  423
1967
2007
  424
1968
2008
  425
1969
- 426</pre>
2009
+ 426
2010
+ 427
2011
+ 428
2012
+ 429
2013
+ 430
2014
+ 431</pre>
1970
2015
  </td>
1971
2016
  <td>
1972
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 408</span>
2017
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 413</span>
1973
2018
 
1974
2019
  <span class='kw'>def</span> <span class='id identifier rubyid_format'>format</span><span class='lparen'>(</span><span class='id identifier rubyid_captured_binding_infos'>captured_binding_infos</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_output_format'>output_format</span> <span class='op'>=</span> <span class='id identifier rubyid_get_default_format_for_environment'>get_default_format_for_environment</span><span class='rparen'>)</span>
1975
2020
  <span class='kw'>return</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_captured_binding_infos'>captured_binding_infos</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_captured_binding_infos'>captured_binding_infos</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
@@ -2010,11 +2055,6 @@
2010
2055
  <pre class="lines">
2011
2056
 
2012
2057
 
2013
- 436
2014
- 437
2015
- 438
2016
- 439
2017
- 440
2018
2058
  441
2019
2059
  442
2020
2060
  443
@@ -2027,10 +2067,11 @@
2027
2067
  450
2028
2068
  451
2029
2069
  452
2030
- 453</pre>
2070
+ 453
2071
+ 454</pre>
2031
2072
  </td>
2032
2073
  <td>
2033
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 436</span>
2074
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 441</span>
2034
2075
 
2035
2076
  <span class='kw'>def</span> <span class='id identifier rubyid_get_default_format_for_environment'>get_default_format_for_environment</span>
2036
2077
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2038,11 +2079,7 @@
2038
2079
  <span class='id identifier rubyid_env'>env</span> <span class='op'>=</span> <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RAILS_ENV</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RACK_ENV</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>development</span><span class='tstring_end'>&#39;</span></span>
2039
2080
  <span class='ivar'>@output_format</span> <span class='op'>=</span> <span class='kw'>case</span> <span class='id identifier rubyid_env'>env</span>
2040
2081
  <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>development</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test</span><span class='tstring_end'>&#39;</span></span>
2041
- <span class='kw'>if</span> <span class='id identifier rubyid_running_in_ci?'>running_in_ci?</span>
2042
- <span class='symbol'>:plaintext</span>
2043
- <span class='kw'>else</span>
2044
- <span class='symbol'>:terminal</span>
2045
- <span class='kw'>end</span>
2082
+ <span class='id identifier rubyid_running_in_ci?'>running_in_ci?</span> <span class='op'>?</span> <span class='symbol'>:plaintext</span> <span class='op'>:</span> <span class='symbol'>:terminal</span>
2046
2083
  <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>production</span><span class='tstring_end'>&#39;</span></span>
2047
2084
  <span class='symbol'>:json</span>
2048
2085
  <span class='kw'>else</span>
@@ -2092,12 +2129,12 @@
2092
2129
  <pre class="lines">
2093
2130
 
2094
2131
 
2095
- 236
2096
- 237
2097
- 238</pre>
2132
+ 229
2133
+ 230
2134
+ 231</pre>
2098
2135
  </td>
2099
2136
  <td>
2100
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 236</span>
2137
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 229</span>
2101
2138
 
2102
2139
  <span class='kw'>def</span> <span class='id identifier rubyid_is_a_minitest?'>is_a_minitest?</span><span class='lparen'>(</span><span class='id identifier rubyid_klass'>klass</span><span class='rparen'>)</span>
2103
2140
  <span class='id identifier rubyid_klass'>klass</span><span class='period'>.</span><span class='id identifier rubyid_ancestors'>ancestors</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="Minitest.html" title="Minitest (module)">Minitest</a></span></span><span class='op'>::</span><span class='const'>Test</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_klass'>klass</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Minitest::Test</span><span class='tstring_end'>&#39;</span></span>
@@ -2144,12 +2181,12 @@
2144
2181
  <pre class="lines">
2145
2182
 
2146
2183
 
2147
- 271
2148
- 272
2149
- 273</pre>
2184
+ 264
2185
+ 265
2186
+ 266</pre>
2150
2187
  </td>
2151
2188
  <td>
2152
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 271</span>
2189
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 264</span>
2153
2190
 
2154
2191
  <span class='kw'>def</span> <span class='id identifier rubyid_is_rspec_example?'>is_rspec_example?</span><span class='lparen'>(</span><span class='id identifier rubyid_tracepoint'>tracepoint</span><span class='rparen'>)</span>
2155
2192
  <span class='id identifier rubyid_tracepoint'>tracepoint</span><span class='period'>.</span><span class='id identifier rubyid_method_id'>method_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='lparen'>(</span><span class='id identifier rubyid_tracepoint'>tracepoint</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>rspec</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_tracepoint'>tracepoint</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_end_with?'>end_with?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>_spec.rb</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
@@ -2174,12 +2211,12 @@
2174
2211
  <pre class="lines">
2175
2212
 
2176
2213
 
2177
- 126
2178
- 127
2179
- 128</pre>
2214
+ 121
2215
+ 122
2216
+ 123</pre>
2180
2217
  </td>
2181
2218
  <td>
2182
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 126</span>
2219
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 121</span>
2183
2220
 
2184
2221
  <span class='kw'>def</span> <span class='id identifier rubyid_max_capture_length'>max_capture_length</span>
2185
2222
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='lbrace'>{</span> <span class='ivar'>@max_capture_length</span> <span class='op'>||</span> <span class='const'><span class='object_link'><a href="#DEFAULT_MAX_CAPTURE_LENGTH-constant" title="EnhancedErrors::DEFAULT_MAX_CAPTURE_LENGTH (constant)">DEFAULT_MAX_CAPTURE_LENGTH</a></span></span> <span class='rbrace'>}</span>
@@ -2192,7 +2229,7 @@
2192
2229
  <div class="method_details ">
2193
2230
  <h3 class="signature " id="max_capture_length=-class_method">
2194
2231
 
2195
- .<strong>max_capture_length=</strong>(val) &#x21d2; <tt>Object</tt>
2232
+ .<strong>max_capture_length=</strong>(value) &#x21d2; <tt>Object</tt>
2196
2233
 
2197
2234
 
2198
2235
 
@@ -2204,14 +2241,14 @@
2204
2241
  <pre class="lines">
2205
2242
 
2206
2243
 
2207
- 130
2208
- 131
2209
- 132</pre>
2244
+ 125
2245
+ 126
2246
+ 127</pre>
2210
2247
  </td>
2211
2248
  <td>
2212
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 130</span>
2249
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 125</span>
2213
2250
 
2214
- <span class='kw'>def</span> <span class='id identifier rubyid_max_capture_length='>max_capture_length=</span><span class='lparen'>(</span><span class='id identifier rubyid_val'>val</span><span class='rparen'>)</span>
2251
+ <span class='kw'>def</span> <span class='id identifier rubyid_max_capture_length='>max_capture_length=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
2215
2252
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='lbrace'>{</span> <span class='ivar'>@max_capture_length</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='rbrace'>}</span>
2216
2253
  <span class='kw'>end</span></pre>
2217
2254
  </td>
@@ -2264,18 +2301,18 @@
2264
2301
  <pre class="lines">
2265
2302
 
2266
2303
 
2267
- 376
2268
- 377
2269
- 378
2270
- 379
2271
- 380
2272
2304
  381
2273
2305
  382
2274
2306
  383
2275
- 384</pre>
2307
+ 384
2308
+ 385
2309
+ 386
2310
+ 387
2311
+ 388
2312
+ 389</pre>
2276
2313
  </td>
2277
2314
  <td>
2278
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 376</span>
2315
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 381</span>
2279
2316
 
2280
2317
  <span class='kw'>def</span> <span class='id identifier rubyid_on_capture'>on_capture</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
2281
2318
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2306,14 +2343,14 @@
2306
2343
  <pre class="lines">
2307
2344
 
2308
2345
 
2309
- 386
2310
- 387
2311
- 388
2312
- 389
2313
- 390</pre>
2346
+ 391
2347
+ 392
2348
+ 393
2349
+ 394
2350
+ 395</pre>
2314
2351
  </td>
2315
2352
  <td>
2316
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 386</span>
2353
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 391</span>
2317
2354
 
2318
2355
  <span class='kw'>def</span> <span class='id identifier rubyid_on_capture='>on_capture=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
2319
2356
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2340,18 +2377,18 @@
2340
2377
  <pre class="lines">
2341
2378
 
2342
2379
 
2343
- 392
2344
- 393
2345
- 394
2346
- 395
2347
- 396
2348
2380
  397
2349
2381
  398
2350
2382
  399
2351
- 400</pre>
2383
+ 400
2384
+ 401
2385
+ 402
2386
+ 403
2387
+ 404
2388
+ 405</pre>
2352
2389
  </td>
2353
2390
  <td>
2354
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 392</span>
2391
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 397</span>
2355
2392
 
2356
2393
  <span class='kw'>def</span> <span class='id identifier rubyid_on_format'>on_format</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
2357
2394
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2382,14 +2419,14 @@
2382
2419
  <pre class="lines">
2383
2420
 
2384
2421
 
2385
- 402
2386
- 403
2387
- 404
2388
- 405
2389
- 406</pre>
2422
+ 407
2423
+ 408
2424
+ 409
2425
+ 410
2426
+ 411</pre>
2390
2427
  </td>
2391
2428
  <td>
2392
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 402</span>
2429
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 407</span>
2393
2430
 
2394
2431
  <span class='kw'>def</span> <span class='id identifier rubyid_on_format='>on_format=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
2395
2432
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2416,31 +2453,19 @@
2416
2453
  <pre class="lines">
2417
2454
 
2418
2455
 
2456
+ 173
2457
+ 174
2458
+ 175
2419
2459
  176
2420
2460
  177
2421
2461
  178
2422
2462
  179
2423
- 180
2424
- 181
2425
- 182
2426
- 183
2427
- 184
2428
- 185
2429
- 186
2430
- 187
2431
- 188
2432
- 189</pre>
2463
+ 180</pre>
2433
2464
  </td>
2434
2465
  <td>
2435
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 176</span>
2466
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 173</span>
2436
2467
 
2437
2468
  <span class='kw'>def</span> <span class='id identifier rubyid_override_exception_message'>override_exception_message</span><span class='lparen'>(</span><span class='id identifier rubyid_exception'>exception</span><span class='comma'>,</span> <span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='rparen'>)</span>
2438
- <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>unless</span> <span class='id identifier rubyid_exception'>exception</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:message</span><span class='rparen'>)</span>
2439
- <span class='id identifier rubyid_test_binding'>test_binding</span> <span class='op'>=</span> <span class='op'>!</span><span class='lparen'>(</span><span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span><span class='rparen'>)</span>
2440
- <span class='id identifier rubyid_exception_binding'>exception_binding</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_binding_infos'>binding_infos</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>&gt;</span> <span class='int'>0</span><span class='rparen'>)</span>
2441
- <span class='id identifier rubyid_has_message'>has_message</span> <span class='op'>=</span> <span class='op'>!</span><span class='lparen'>(</span><span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:unaltered_message</span><span class='rparen'>)</span><span class='rparen'>)</span>
2442
- <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>unless</span> <span class='lparen'>(</span><span class='id identifier rubyid_test_binding'>test_binding</span> <span class='op'>||</span> <span class='id identifier rubyid_exception_binding'>exception_binding</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_has_message'>has_message</span>
2443
-
2444
2469
  <span class='id identifier rubyid_variable_str'>variable_str</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="" title="EnhancedErrors (class)">EnhancedErrors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_format'><span class='object_link'><a href="#format-class_method" title="EnhancedErrors.format (method)">format</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='rparen'>)</span>
2445
2470
  <span class='id identifier rubyid_message_str'>message_str</span> <span class='op'>=</span> <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span>
2446
2471
  <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_define_singleton_method'>define_singleton_method</span><span class='lparen'>(</span><span class='symbol'>:unaltered_message</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_message_str'>message_str</span> <span class='rbrace'>}</span>
@@ -2468,6 +2493,12 @@
2468
2493
  <pre class="lines">
2469
2494
 
2470
2495
 
2496
+ 156
2497
+ 157
2498
+ 158
2499
+ 159
2500
+ 160
2501
+ 161
2471
2502
  162
2472
2503
  163
2473
2504
  164
@@ -2477,25 +2508,25 @@
2477
2508
  168
2478
2509
  169
2479
2510
  170
2480
- 171
2481
- 172
2482
- 173
2483
- 174</pre>
2511
+ 171</pre>
2484
2512
  </td>
2485
2513
  <td>
2486
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 162</span>
2514
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 156</span>
2487
2515
 
2488
2516
  <span class='kw'>def</span> <span class='id identifier rubyid_override_rspec_message'>override_rspec_message</span><span class='lparen'>(</span><span class='id identifier rubyid_example'>example</span><span class='comma'>,</span> <span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='rparen'>)</span>
2489
2517
  <span class='id identifier rubyid_exception_obj'>exception_obj</span> <span class='op'>=</span> <span class='id identifier rubyid_example'>example</span><span class='period'>.</span><span class='id identifier rubyid_exception'>exception</span>
2490
- <span class='kw'>case</span> <span class='id identifier rubyid_exception_obj'>exception_obj</span>
2491
- <span class='kw'>when</span> <span class='kw'>nil</span>
2492
- <span class='kw'>return</span> <span class='kw'>nil</span>
2493
- <span class='kw'>when</span> <span class='const'>RSpec</span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>MultipleExceptionError</span>
2518
+ <span class='kw'>return</span> <span class='kw'>if</span> <span class='id identifier rubyid_exception_obj'>exception_obj</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
2519
+
2520
+ <span class='id identifier rubyid_from_bindings'>from_bindings</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_flatten'>flatten</span><span class='period'>.</span><span class='id identifier rubyid_compact'>compact</span>
2521
+ <span class='kw'>case</span> <span class='id identifier rubyid_exception_obj'>exception_obj</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
2522
+ <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RSpec::Core::MultipleExceptionError</span><span class='tstring_end'>&#39;</span></span>
2494
2523
  <span class='id identifier rubyid_exception_obj'>exception_obj</span><span class='period'>.</span><span class='id identifier rubyid_all_exceptions'>all_exceptions</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_exception'>exception</span><span class='op'>|</span>
2495
- <span class='id identifier rubyid_override_exception_message'>override_exception_message</span><span class='lparen'>(</span><span class='id identifier rubyid_exception'>exception</span><span class='comma'>,</span> <span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='rparen'>)</span>
2524
+ <span class='id identifier rubyid_override_exception_message'>override_exception_message</span><span class='lparen'>(</span><span class='id identifier rubyid_exception'>exception</span><span class='comma'>,</span> <span class='id identifier rubyid_from_bindings'>from_bindings</span> <span class='op'>+</span> <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_binding_infos'>binding_infos</span><span class='rparen'>)</span>
2496
2525
  <span class='kw'>end</span>
2497
- <span class='kw'>else</span>
2526
+ <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RSpec::Expectations::ExpectationNotMetError</span><span class='tstring_end'>&#39;</span></span>
2498
2527
  <span class='id identifier rubyid_override_exception_message'>override_exception_message</span><span class='lparen'>(</span><span class='id identifier rubyid_exception_obj'>exception_obj</span><span class='comma'>,</span> <span class='id identifier rubyid_binding_or_bindings'>binding_or_bindings</span><span class='rparen'>)</span>
2528
+ <span class='kw'>else</span>
2529
+ <span class='id identifier rubyid_override_exception_message'>override_exception_message</span><span class='lparen'>(</span><span class='id identifier rubyid_exception_obj'>exception_obj</span><span class='comma'>,</span> <span class='id identifier rubyid_from_bindings'>from_bindings</span> <span class='op'>+</span> <span class='id identifier rubyid_exception_obj'>exception_obj</span><span class='period'>.</span><span class='id identifier rubyid_binding_infos'>binding_infos</span><span class='rparen'>)</span>
2499
2530
  <span class='kw'>end</span>
2500
2531
  <span class='kw'>end</span></pre>
2501
2532
  </td>
@@ -2518,20 +2549,20 @@
2518
2549
  <pre class="lines">
2519
2550
 
2520
2551
 
2552
+ 138
2553
+ 139
2554
+ 140
2555
+ 141
2556
+ 142
2557
+ 143
2521
2558
  144
2522
2559
  145
2523
2560
  146
2524
2561
  147
2525
- 148
2526
- 149
2527
- 150
2528
- 151
2529
- 152
2530
- 153
2531
- 154</pre>
2562
+ 148</pre>
2532
2563
  </td>
2533
2564
  <td>
2534
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 144</span>
2565
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 138</span>
2535
2566
 
2536
2567
  <span class='kw'>def</span> <span class='id identifier rubyid_reset!'>reset!</span>
2537
2568
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2586,7 +2617,6 @@
2586
2617
  <pre class="lines">
2587
2618
 
2588
2619
 
2589
- 455
2590
2620
  456
2591
2621
  457
2592
2622
  458
@@ -2595,18 +2625,79 @@
2595
2625
  461</pre>
2596
2626
  </td>
2597
2627
  <td>
2598
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 455</span>
2628
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 456</span>
2599
2629
 
2600
2630
  <span class='kw'>def</span> <span class='id identifier rubyid_running_in_ci?'>running_in_ci?</span>
2601
2631
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
2602
2632
  <span class='kw'>return</span> <span class='ivar'>@running_in_ci</span> <span class='kw'>if</span> <span class='kw'>defined?</span><span class='lparen'>(</span><span class='ivar'>@running_in_ci</span><span class='rparen'>)</span>
2603
-
2604
2633
  <span class='ivar'>@running_in_ci</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="#CI_ENV_VARS-constant" title="EnhancedErrors::CI_ENV_VARS (constant)">CI_ENV_VARS</a></span></span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>true</span><span class='tstring_end'>&#39;</span></span> <span class='rbrace'>}</span>
2605
2634
  <span class='kw'>end</span>
2606
2635
  <span class='kw'>end</span></pre>
2607
2636
  </td>
2608
2637
  </tr>
2609
2638
  </table>
2639
+ </div>
2640
+
2641
+ <div class="method_details ">
2642
+ <h3 class="signature " id="safe_to_inspect?-class_method">
2643
+
2644
+ .<strong>safe_to_inspect?</strong>(obj) &#x21d2; <tt>Boolean</tt>
2645
+
2646
+
2647
+
2648
+
2649
+
2650
+ </h3><div class="docstring">
2651
+ <div class="discussion">
2652
+
2653
+ <p>Here, we are detecting BasicObject, which is surprisingly annoying. We also, importantly, need to detect descendants, as they will also present with a lack of :respond_to? and any other useful method for us.</p>
2654
+
2655
+
2656
+ </div>
2657
+ </div>
2658
+ <div class="tags">
2659
+
2660
+ <p class="tag_title">Returns:</p>
2661
+ <ul class="return">
2662
+
2663
+ <li>
2664
+
2665
+
2666
+ <span class='type'>(<tt>Boolean</tt>)</span>
2667
+
2668
+
2669
+
2670
+ </li>
2671
+
2672
+ </ul>
2673
+
2674
+ </div><table class="source_code">
2675
+ <tr>
2676
+ <td>
2677
+ <pre class="lines">
2678
+
2679
+
2680
+ 479
2681
+ 480
2682
+ 481
2683
+ 482
2684
+ 483
2685
+ 484
2686
+ 485</pre>
2687
+ </td>
2688
+ <td>
2689
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 479</span>
2690
+
2691
+ <span class='kw'>def</span> <span class='id identifier rubyid_safe_to_inspect?'>safe_to_inspect?</span><span class='lparen'>(</span><span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span>
2692
+ <span class='kw'>begin</span>
2693
+ <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span>
2694
+ <span class='kw'>rescue</span> <span class='const'>NoMethodError</span>
2695
+ <span class='kw'>return</span> <span class='kw'>false</span>
2696
+ <span class='kw'>end</span>
2697
+ <span class='kw'>end</span></pre>
2698
+ </td>
2699
+ </tr>
2700
+ </table>
2610
2701
  </div>
2611
2702
 
2612
2703
  <div class="method_details ">
@@ -2624,18 +2715,18 @@
2624
2715
  <pre class="lines">
2625
2716
 
2626
2717
 
2627
- 156
2628
- 157
2629
- 158
2630
- 159
2631
- 160</pre>
2718
+ 150
2719
+ 151
2720
+ 152
2721
+ 153
2722
+ 154</pre>
2632
2723
  </td>
2633
2724
  <td>
2634
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 156</span>
2725
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 150</span>
2635
2726
 
2636
2727
  <span class='kw'>def</span> <span class='id identifier rubyid_skip_list'>skip_list</span>
2637
2728
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
2638
- <span class='ivar'>@skip_list</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="#DEFAULT_SKIP_LIST-constant" title="EnhancedErrors::DEFAULT_SKIP_LIST (constant)">DEFAULT_SKIP_LIST</a></span></span>
2729
+ <span class='ivar'>@skip_list</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="#DEFAULT_SKIP_LIST-constant" title="EnhancedErrors::DEFAULT_SKIP_LIST (constant)">DEFAULT_SKIP_LIST</a></span></span><span class='period'>.</span><span class='id identifier rubyid_to_set'>to_set</span>
2639
2730
  <span class='kw'>end</span>
2640
2731
  <span class='kw'>end</span></pre>
2641
2732
  </td>
@@ -2658,24 +2749,26 @@
2658
2749
  <pre class="lines">
2659
2750
 
2660
2751
 
2752
+ 233
2753
+ 234
2754
+ 235
2755
+ 236
2756
+ 237
2757
+ 238
2758
+ 239
2661
2759
  240
2662
2760
  241
2663
2761
  242
2664
2762
  243
2665
2763
  244
2666
- 245
2667
- 246
2668
- 247
2669
- 248
2670
- 249
2671
- 250
2672
- 251</pre>
2764
+ 245</pre>
2673
2765
  </td>
2674
2766
  <td>
2675
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 240</span>
2767
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 233</span>
2676
2768
 
2677
2769
  <span class='kw'>def</span> <span class='id identifier rubyid_start_minitest_binding_capture'>start_minitest_binding_capture</span>
2678
- <span class='const'><span class='object_link'><a href="EnhancedExceptionContext.html" title="EnhancedExceptionContext (module)">EnhancedExceptionContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_clear_all'><span class='object_link'><a href="EnhancedExceptionContext.html#clear_all-instance_method" title="EnhancedExceptionContext#clear_all (method)">clear_all</a></span></span>
2770
+ <span class='id identifier rubyid_ensure_extensions_are_required'>ensure_extensions_are_required</span>
2771
+ <span class='const'><span class='object_link'><a href="Enhanced.html" title="Enhanced (module)">Enhanced</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Enhanced/ExceptionContext.html" title="Enhanced::ExceptionContext (module)">ExceptionContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_clear_all'><span class='object_link'><a href="Enhanced/ExceptionContext.html#clear_all-instance_method" title="Enhanced::ExceptionContext#clear_all (method)">clear_all</a></span></span>
2679
2772
  <span class='ivar'>@enabled</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='ivar'>@enabled</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
2680
2773
  <span class='kw'>return</span> <span class='kw'>unless</span> <span class='ivar'>@enabled</span>
2681
2774
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2683,7 +2776,7 @@
2683
2776
  <span class='kw'>next</span> <span class='kw'>unless</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_method_id'>method_id</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_start_with?'>start_with?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_is_a_minitest?'>is_a_minitest?</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_defined_class'>defined_class</span><span class='rparen'>)</span>
2684
2777
  <span class='ivar'>@minitest_test_binding</span> <span class='op'>=</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_binding'>binding</span>
2685
2778
  <span class='kw'>end</span>
2686
- <span class='ivar'>@minitest_trace</span><span class='period'>.</span><span class='id identifier rubyid_enable'>enable</span>
2779
+ <span class='ivar'>@minitest_trace</span><span class='op'>&amp;.</span><span class='id identifier rubyid_enable'>enable</span>
2687
2780
  <span class='kw'>end</span>
2688
2781
  <span class='kw'>end</span></pre>
2689
2782
  </td>
@@ -2706,6 +2799,13 @@
2706
2799
  <pre class="lines">
2707
2800
 
2708
2801
 
2802
+ 268
2803
+ 269
2804
+ 270
2805
+ 271
2806
+ 272
2807
+ 273
2808
+ 274
2709
2809
  275
2710
2810
  276
2711
2811
  277
@@ -2721,17 +2821,65 @@
2721
2821
  287
2722
2822
  288
2723
2823
  289
2724
- 290
2725
- 291
2726
- 292
2727
- 293
2728
- 294
2729
- 295
2730
- 296
2731
- 297
2732
- 298
2733
- 299
2734
- 300
2824
+ 290</pre>
2825
+ </td>
2826
+ <td>
2827
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 268</span>
2828
+
2829
+ <span class='kw'>def</span> <span class='id identifier rubyid_start_rspec_binding_capture'>start_rspec_binding_capture</span>
2830
+ <span class='id identifier rubyid_ensure_extensions_are_required'>ensure_extensions_are_required</span>
2831
+ <span class='const'><span class='object_link'><a href="Enhanced.html" title="Enhanced (module)">Enhanced</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Enhanced/ExceptionContext.html" title="Enhanced::ExceptionContext (module)">ExceptionContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_clear_all'><span class='object_link'><a href="Enhanced/ExceptionContext.html#clear_all-instance_method" title="Enhanced::ExceptionContext#clear_all (method)">clear_all</a></span></span>
2832
+ <span class='ivar'>@enabled</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='ivar'>@enabled</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
2833
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='ivar'>@enabled</span>
2834
+
2835
+ <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
2836
+ <span class='ivar'>@rspec_example_binding</span> <span class='op'>=</span> <span class='kw'>nil</span>
2837
+ <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='kw'>false</span>
2838
+ <span class='ivar'>@rspec_tracepoint</span><span class='op'>&amp;.</span><span class='id identifier rubyid_disable'>disable</span>
2839
+ <span class='ivar'>@rspec_tracepoint</span> <span class='op'>=</span> <span class='const'>TracePoint</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:raise</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_tp'>tp</span><span class='op'>|</span>
2840
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_exception_is_handleable?'>exception_is_handleable?</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_raised_exception'>raised_exception</span><span class='rparen'>)</span>
2841
+ <span class='id identifier rubyid_class_name'>class_name</span> <span class='op'>=</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_raised_exception'>raised_exception</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span>
2842
+ <span class='kw'>case</span> <span class='id identifier rubyid_class_name'>class_name</span>
2843
+ <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RSpec::Expectations::ExpectationNotMetError</span><span class='tstring_end'>&#39;</span></span>
2844
+ <span class='id identifier rubyid_start_rspec_binding_trap'>start_rspec_binding_trap</span>
2845
+ <span class='kw'>else</span>
2846
+ <span class='id identifier rubyid_handle_tracepoint_event'>handle_tracepoint_event</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='rparen'>)</span>
2847
+ <span class='kw'>end</span>
2848
+ <span class='kw'>end</span>
2849
+ <span class='kw'>end</span>
2850
+ <span class='ivar'>@rspec_tracepoint</span><span class='op'>&amp;.</span><span class='id identifier rubyid_enable'>enable</span>
2851
+ <span class='kw'>end</span></pre>
2852
+ </td>
2853
+ </tr>
2854
+ </table>
2855
+ </div>
2856
+
2857
+ <div class="method_details ">
2858
+ <h3 class="signature " id="start_rspec_binding_trap-class_method">
2859
+
2860
+ .<strong>start_rspec_binding_trap</strong> &#x21d2; <tt>Object</tt>
2861
+
2862
+
2863
+
2864
+
2865
+
2866
+ </h3><div class="docstring">
2867
+ <div class="discussion">
2868
+
2869
+ <p>Behavior: Grabs the next rspec spec binding that goes by, and stops the more-expensive b_return trace. This part of RSpec has been stable, since 2015, so although this is kluge-y, it is stable. The optimization does a 2-3x on spec speed vs. opening up the Tracepoint. With it, things are pretty close in speed to plain rspec. Should the behavior change this can be updated by using a trace to print out items and their local variables then, find the exception or call that goes by right before the spec blocks with the variables, and use that to narrow-down the costly part of the probe to just this point in time. The good news is that this part is test-time only, and this optimization and kluge only applies to RSpec.</p>
2870
+
2871
+
2872
+ </div>
2873
+ </div>
2874
+ <div class="tags">
2875
+
2876
+
2877
+ </div><table class="source_code">
2878
+ <tr>
2879
+ <td>
2880
+ <pre class="lines">
2881
+
2882
+
2735
2883
  301
2736
2884
  302
2737
2885
  303
@@ -2743,48 +2891,28 @@
2743
2891
  309
2744
2892
  310
2745
2893
  311
2746
- 312</pre>
2894
+ 312
2895
+ 313
2896
+ 314
2897
+ 315</pre>
2747
2898
  </td>
2748
2899
  <td>
2749
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 275</span>
2750
-
2751
- <span class='kw'>def</span> <span class='id identifier rubyid_start_rspec_binding_capture'>start_rspec_binding_capture</span>
2752
- <span class='const'><span class='object_link'><a href="EnhancedExceptionContext.html" title="EnhancedExceptionContext (module)">EnhancedExceptionContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_clear_all'><span class='object_link'><a href="EnhancedExceptionContext.html#clear_all-instance_method" title="EnhancedExceptionContext#clear_all (method)">clear_all</a></span></span>
2753
- <span class='ivar'>@enabled</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='ivar'>@enabled</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
2754
- <span class='kw'>return</span> <span class='kw'>unless</span> <span class='ivar'>@enabled</span>
2755
-
2756
- <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
2757
- <span class='ivar'>@rspec_example_binding</span> <span class='op'>=</span> <span class='kw'>nil</span>
2758
- <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='kw'>false</span>
2759
- <span class='ivar'>@rspec_tracepoint</span><span class='op'>&amp;.</span><span class='id identifier rubyid_disable'>disable</span>
2900
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 301</span>
2760
2901
 
2761
- <span class='ivar'>@rspec_tracepoint</span> <span class='op'>=</span> <span class='const'>TracePoint</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:raise</span><span class='comma'>,</span> <span class='symbol'>:b_return</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_tp'>tp</span><span class='op'>|</span>
2762
- <span class='comment'># puts &quot;name #{tp.raised_exception.class.name rescue &#39;&#39;} method:#{tp.method_id} tp.binding:#{tp.binding.local_variables rescue &#39;&#39;}&quot;
2763
- </span> <span class='comment'># puts &quot;event: #{tp.event} defined_class#{class_to_string(tp.defined_class)} #{tp.path}:#{tp.lineno} #{tp.callee_id} &quot;
2764
- </span> <span class='comment'># This trickery below is to help us identify the anonymous block return we want to grab
2765
- </span> <span class='comment'># Very kluge-y and edge cases have grown it, but it works
2766
- </span> <span class='kw'>if</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_event'>event</span> <span class='op'>==</span> <span class='symbol'>:b_return</span>
2767
- <span class='kw'>if</span> <span class='const'><span class='object_link'><a href="#RSPEC_HANDLER_NAMES-constant" title="EnhancedErrors::RSPEC_HANDLER_NAMES (constant)">RSPEC_HANDLER_NAMES</a></span></span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_class_to_string'>class_to_string</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_defined_class'>defined_class</span><span class='rparen'>)</span><span class='rparen'>)</span>
2768
- <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='symbol'>:next</span>
2769
- <span class='kw'>next</span>
2770
- <span class='kw'>end</span>
2771
- <span class='kw'>next</span> <span class='kw'>unless</span> <span class='ivar'>@capture_next_binding</span>
2772
- <span class='kw'>if</span> <span class='ivar'>@capture_next_binding</span> <span class='op'>==</span> <span class='symbol'>:next</span> <span class='op'>||</span> <span class='ivar'>@capture_next_binding</span> <span class='op'>==</span> <span class='symbol'>:next_matching</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_is_rspec_example?'>is_rspec_example?</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='rparen'>)</span>
2773
- <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='kw'>false</span>
2774
- <span class='ivar'>@rspec_example_binding</span> <span class='op'>=</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_binding'>binding</span>
2775
- <span class='kw'>end</span>
2776
- <span class='kw'>elsif</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_event'>event</span> <span class='op'>==</span> <span class='symbol'>:raise</span>
2777
- <span class='id identifier rubyid_class_name'>class_name</span> <span class='op'>=</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_raised_exception'>raised_exception</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span>
2778
- <span class='kw'>case</span> <span class='id identifier rubyid_class_name'>class_name</span>
2779
- <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>RSpec::Expectations::ExpectationNotMetError</span><span class='tstring_end'>&#39;</span></span>
2780
- <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='symbol'>:next_matching</span>
2781
- <span class='kw'>else</span>
2782
- <span class='id identifier rubyid_handle_tracepoint_event'>handle_tracepoint_event</span><span class='lparen'>(</span><span class='id identifier rubyid_tp'>tp</span><span class='rparen'>)</span>
2783
- <span class='kw'>end</span>
2784
- <span class='kw'>end</span>
2902
+ <span class='kw'>def</span> <span class='id identifier rubyid_start_rspec_binding_trap'>start_rspec_binding_trap</span>
2903
+ <span class='ivar'>@rspec_binding_trap</span> <span class='op'>=</span> <span class='const'>TracePoint</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:b_return</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_tp'>tp</span><span class='op'>|</span>
2904
+ <span class='comment'># kluge-y hack and will be a pain to maintain
2905
+ </span> <span class='kw'>if</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_callee_id'>callee_id</span> <span class='op'>==</span> <span class='symbol'>:handle_matcher</span>
2906
+ <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='symbol'>:next</span>
2907
+ <span class='kw'>next</span>
2785
2908
  <span class='kw'>end</span>
2786
- <span class='ivar'>@rspec_tracepoint</span><span class='period'>.</span><span class='id identifier rubyid_enable'>enable</span>
2909
+ <span class='kw'>next</span> <span class='kw'>unless</span> <span class='ivar'>@capture_next_binding</span>
2910
+ <span class='ivar'>@capture_next_binding</span> <span class='op'>=</span> <span class='kw'>false</span>
2911
+ <span class='ivar'>@rspec_example_binding</span> <span class='op'>=</span> <span class='id identifier rubyid_tp'>tp</span><span class='period'>.</span><span class='id identifier rubyid_binding'>binding</span>
2912
+ <span class='ivar'>@rspec_binding_trap</span><span class='op'>&amp;.</span><span class='id identifier rubyid_disable'>disable</span>
2913
+ <span class='ivar'>@rspec_binding_trap</span> <span class='op'>=</span> <span class='kw'>nil</span>
2787
2914
  <span class='kw'>end</span>
2915
+ <span class='ivar'>@rspec_binding_trap</span><span class='op'>&amp;.</span><span class='id identifier rubyid_enable'>enable</span>
2788
2916
  <span class='kw'>end</span></pre>
2789
2917
  </td>
2790
2918
  </tr>
@@ -2806,25 +2934,23 @@
2806
2934
  <pre class="lines">
2807
2935
 
2808
2936
 
2809
- 253
2810
- 254
2811
- 255
2812
- 256
2813
- 257
2814
- 258
2815
- 259
2816
- 260</pre>
2937
+ 247
2938
+ 248
2939
+ 249
2940
+ 250
2941
+ 251
2942
+ 252
2943
+ 253</pre>
2817
2944
  </td>
2818
2945
  <td>
2819
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 253</span>
2946
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 247</span>
2820
2947
 
2821
2948
  <span class='kw'>def</span> <span class='id identifier rubyid_stop_minitest_binding_capture'>stop_minitest_binding_capture</span>
2822
2949
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
2823
2950
  <span class='ivar'>@minitest_trace</span><span class='op'>&amp;.</span><span class='id identifier rubyid_disable'>disable</span>
2824
2951
  <span class='ivar'>@minitest_trace</span> <span class='op'>=</span> <span class='kw'>nil</span>
2825
2952
  <span class='id identifier rubyid_convert_binding_to_binding_info'>convert_binding_to_binding_info</span><span class='lparen'>(</span><span class='ivar'>@minitest_test_binding</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@minitest_test_binding</span>
2826
- <span class='comment'># EnhancedExceptionContext.clear_all
2827
- </span> <span class='kw'>end</span>
2953
+ <span class='kw'>end</span>
2828
2954
  <span class='kw'>end</span></pre>
2829
2955
  </td>
2830
2956
  </tr>
@@ -2846,19 +2972,19 @@
2846
2972
  <pre class="lines">
2847
2973
 
2848
2974
 
2849
- 314
2850
- 315
2851
- 316
2852
2975
  317
2853
2976
  318
2854
2977
  319
2855
2978
  320
2856
2979
  321
2857
2980
  322
2858
- 323</pre>
2981
+ 323
2982
+ 324
2983
+ 325
2984
+ 326</pre>
2859
2985
  </td>
2860
2986
  <td>
2861
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 314</span>
2987
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 317</span>
2862
2988
 
2863
2989
  <span class='kw'>def</span> <span class='id identifier rubyid_stop_rspec_binding_capture'>stop_rspec_binding_capture</span>
2864
2990
  <span class='id identifier rubyid_mutex'>mutex</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
@@ -2890,21 +3016,15 @@
2890
3016
  <pre class="lines">
2891
3017
 
2892
3018
 
2893
- 475
2894
- 476
2895
- 477
2896
- 478
2897
- 479
2898
- 480</pre>
3019
+ 472
3020
+ 473
3021
+ 474</pre>
2899
3022
  </td>
2900
3023
  <td>
2901
- <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 475</span>
3024
+ <pre class="code"><span class="info file"># File 'lib/enhanced_errors.rb', line 472</span>
2902
3025
 
2903
3026
  <span class='kw'>def</span> <span class='id identifier rubyid_validate_binding_format'>validate_binding_format</span><span class='lparen'>(</span><span class='id identifier rubyid_binding_info'>binding_info</span><span class='rparen'>)</span>
2904
- <span class='kw'>unless</span> <span class='id identifier rubyid_binding_info'>binding_info</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='symbol'>:capture_event</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:variables</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
2905
- <span class='kw'>return</span> <span class='kw'>nil</span>
2906
- <span class='kw'>end</span>
2907
- <span class='id identifier rubyid_binding_info'>binding_info</span>
3027
+ <span class='id identifier rubyid_binding_info'>binding_info</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='symbol'>:capture_event</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_binding_info'>binding_info</span><span class='lbracket'>[</span><span class='symbol'>:variables</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
2908
3028
  <span class='kw'>end</span></pre>
2909
3029
  </td>
2910
3030
  </tr>
@@ -2916,9 +3036,9 @@
2916
3036
  </div>
2917
3037
 
2918
3038
  <div id="footer">
2919
- Generated on Tue Dec 17 21:43:58 2024 by
3039
+ Generated on Wed Dec 25 13:01:48 2024 by
2920
3040
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2921
- 0.9.37 (ruby-3.3.6).
3041
+ 0.9.37 (ruby-3.4.1).
2922
3042
  </div>
2923
3043
 
2924
3044
  </div>