/docs/ruby-1.9.3-p0_core/classes/IRB/ExtendCommand/Require.html

https://github.com/toy/rb · HTML · 137 lines · 89 code · 48 blank · 0 comment · 0 complexity · eaadf5ed02fe02c674e08acf811b30ca MD5 · raw file

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  5. <head>
  6. <title>IRB::ExtendCommand::Require</title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  8. <link rel="stylesheet" href="../../../css/reset.css" type="text/css" media="screen" />
  9. <link rel="stylesheet" href="../../../css/main.css" type="text/css" media="screen" />
  10. <script src="../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
  11. <script src="../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
  12. <script src="../../../js/main.js" type="text/javascript" charset="utf-8"></script>
  13. </head>
  14. <body>
  15. <div class="banner">
  16. <h1>
  17. <span class="type">Class</span>
  18. IRB::ExtendCommand::Require
  19. <span class="parent">&lt;
  20. Nop
  21. </span>
  22. </h1>
  23. <ul class="files">
  24. <li><a href="../../../files/lib/irb/cmd/load_rb.html">lib/irb/cmd/load.rb</a></li>
  25. </ul>
  26. </div>
  27. <div id="bodyContent">
  28. <div id="content">
  29. <div class="sectiontitle">Methods</div>
  30. <dl class="methods">
  31. <dt>E</dt>
  32. <dd>
  33. <ul>
  34. <li><a href="#M002329">execute</a></li>
  35. </ul>
  36. </dd>
  37. </dl>
  38. <div class="sectiontitle">Included Modules</div>
  39. <ul>
  40. <li>
  41. <a href="../HistorySavingAbility.html">IRB::HistorySavingAbility</a>
  42. START:includes
  43. </li>
  44. </ul>
  45. <div class="sectiontitle">Instance Public methods</div>
  46. <div class="method">
  47. <div class="title" id="M002329">
  48. <a name="M002329"></a><b>execute</b>(file_name)
  49. </div>
  50. <div class="sourcecode">
  51. <p class="source-link">
  52. Source: <a href="javascript:toggleSource('M002329_source')" id="l_M002329_source">show</a>
  53. </p>
  54. <div id="M002329_source" class="dyn-source">
  55. <pre> <span class="ruby-comment cmt"># File lib/irb/cmd/load.rb, line 29</span>
  56. 29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">execute</span>(<span class="ruby-identifier">file_name</span>)
  57. 30: <span class="ruby-comment cmt"># return ruby_require(file_name) unless IRB.conf[:USE_LOADER]</span>
  58. 31:
  59. 32: <span class="ruby-identifier">rex</span> = <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{Regexp.quote(file_name)}(\.o|\.rb)?&quot;</span>)
  60. 33: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$&quot;</span>.<span class="ruby-identifier">find</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-identifier">f</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">rex</span>}
  61. 34:
  62. 35: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">file_name</span>
  63. 36: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/\.rb$/</span>
  64. 37: <span class="ruby-keyword kw">begin</span>
  65. 38: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">irb_load</span>(<span class="ruby-identifier">file_name</span>)
  66. 39: <span class="ruby-identifier">$&quot;</span>.<span class="ruby-identifier">push</span> <span class="ruby-identifier">file_name</span>
  67. 40: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span>
  68. 41: <span class="ruby-keyword kw">end</span>
  69. 42: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">LoadError</span>
  70. 43: <span class="ruby-keyword kw">end</span>
  71. 44: <span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/\.(so|o|sl)$/</span>
  72. 45: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">ruby_require</span>(<span class="ruby-identifier">file_name</span>)
  73. 46: <span class="ruby-keyword kw">end</span>
  74. 47:
  75. 48: <span class="ruby-keyword kw">begin</span>
  76. 49: <span class="ruby-identifier">irb_load</span>(<span class="ruby-identifier">f</span> = <span class="ruby-identifier">file_name</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;.rb&quot;</span>)
  77. 50: <span class="ruby-identifier">$&quot;</span>.<span class="ruby-identifier">push</span> <span class="ruby-identifier">f</span>
  78. 51: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span>
  79. 52: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">LoadError</span>
  80. 53: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">ruby_require</span>(<span class="ruby-identifier">file_name</span>)
  81. 54: <span class="ruby-keyword kw">end</span>
  82. 55: <span class="ruby-keyword kw">end</span></pre>
  83. </div>
  84. </div>
  85. </div>
  86. </div>
  87. </div>
  88. </body>
  89. </html>