📁 File Manager Pro
v10.0.3 | PHP: 8.1.34
Server: Apache
2026-06-22 07:12:25
📂
/ (Root)
/
opt
/
alt
/
ruby21
/
share
/
doc
/
ruby
/
capi
/
html
/
db
/
d0a
📍 /opt/alt/ruby21/share/doc/ruby/capi/html/db/d0a
🔄 Refresh
✏️
Editing: method_8h_source.html
Read Only
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.14"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>Ruby: method.h Source File</title> <link href="../../tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="../../jquery.js"></script> <script type="text/javascript" src="../../dynsections.js"></script> <link href="../../doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">Ruby  <span id="projectnumber">2.1.10p492(2016-04-01revision54464)</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <script type="text/javascript" src="../../menudata.js"></script> <script type="text/javascript" src="../../menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('../../',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">method.h</div> </div> </div><!--header--> <div class="contents"> <a href="../../db/d0a/method_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/**********************************************************************</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"></span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> method.h -</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"></span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> $Author: nagachika $</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> created at: Wed Jul 15 20:02:33 2009</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"></span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> Copyright (C) 2009 Koichi Sasada</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"></span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">**********************************************************************/</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#ifndef METHOD_H</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#define METHOD_H</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> </div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#include "<a class="code" href="../../db/dde/internal_8h.html">internal.h</a>"</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#ifndef END_OF_ENUMERATION</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor"># if defined(__GNUC__) &&! defined(__STRICT_ANSI__)</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor"># define END_OF_ENUMERATION(key)</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor"># else</span></div><div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#afa7840a585cb0f817a0c6bb51c3cd710"> 20</a></span> <span class="preprocessor"># define END_OF_ENUMERATION(key) END_OF_##key##_PLACEHOLDER = 0</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor"># endif</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div><div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439"> 24</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439acbaffd02a49dab8af6ca3bcde9336f30"> 25</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439acbaffd02a49dab8af6ca3bcde9336f30">NOEX_PUBLIC</a> = 0x00,</div><div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439abc0c737dc2f61e01b4727719e3fbda85"> 26</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439abc0c737dc2f61e01b4727719e3fbda85">NOEX_NOSUPER</a> = 0x01,</div><div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a155818970b18d63d59c83d22bc61803d"> 27</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a155818970b18d63d59c83d22bc61803d">NOEX_PRIVATE</a> = 0x02,</div><div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a0854498e40d4e26dd716a0ceba556439"> 28</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a0854498e40d4e26dd716a0ceba556439">NOEX_PROTECTED</a> = 0x04,</div><div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a7098707ff488047cda2e2b8cb67d0bc8"> 29</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a7098707ff488047cda2e2b8cb67d0bc8">NOEX_MASK</a> = 0x06,</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a89772c44f8ad525a290f1fd86dbc7467"> 30</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a89772c44f8ad525a290f1fd86dbc7467">NOEX_BASIC</a> = 0x08,</div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a67eab9ddcfb8fc376407c923b8e2346d"> 31</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a67eab9ddcfb8fc376407c923b8e2346d">NOEX_UNDEF</a> = <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439abc0c737dc2f61e01b4727719e3fbda85">NOEX_NOSUPER</a>,</div><div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a50775b7233e9bb462c3703a6511e02d1"> 32</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a50775b7233e9bb462c3703a6511e02d1">NOEX_MODFUNC</a> = 0x12,</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a60753f4c8511e58fc3d7288198c9672c"> 33</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a60753f4c8511e58fc3d7288198c9672c">NOEX_SUPER</a> = 0x20,</div><div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a050f4f27ee3d53fb7245d5f8fd46c2c5"> 34</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a050f4f27ee3d53fb7245d5f8fd46c2c5">NOEX_VCALL</a> = 0x40,</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3bc69bb425422fec148df526033801c8"> 35</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3bc69bb425422fec148df526033801c8">NOEX_RESPONDS</a> = 0x80,</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3adc24e1d2a8eee73ecd89ff8679ae0f"> 37</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3adc24e1d2a8eee73ecd89ff8679ae0f">NOEX_BIT_WIDTH</a> = 8,</div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a7cf3718c769f26d8dd9aefcc6ef86b28"> 38</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a7cf3718c769f26d8dd9aefcc6ef86b28">NOEX_SAFE_SHIFT_OFFSET</a> = ((<a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3adc24e1d2a8eee73ecd89ff8679ae0f">NOEX_BIT_WIDTH</a>+3)/4)*4 <span class="comment">/* round up to nibble */</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> } <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439">rb_method_flag_t</a>;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#aed3997af049d2b2520c37056aae2a7f3"> 41</a></span> <span class="preprocessor">#define NOEX_SAFE(n) ((int)((n) >> NOEX_SAFE_SHIFT_OFFSET) & 0x0F)</span></div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#af19b647a15d397270c6a8fa01e5916b5"> 42</a></span> <span class="preprocessor">#define NOEX_WITH(n, s) (((s) << NOEX_SAFE_SHIFT_OFFSET) | (n) | (ruby_running ? 0 : NOEX_BASIC))</span></div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a5a208ac44671ad2ca25a1efacc3795ee"> 43</a></span> <span class="preprocessor">#define NOEX_WITH_SAFE(n) NOEX_WITH((n), rb_safe_level())</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment">/* method data type */</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687a"> 47</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa09fd70c8c3426502348b7df7c121e505"> 48</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa09fd70c8c3426502348b7df7c121e505">VM_METHOD_TYPE_ISEQ</a>,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa1691810af54507b018d2639b60e8057d"> 49</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa1691810af54507b018d2639b60e8057d">VM_METHOD_TYPE_CFUNC</a>,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa0afa124f1dfc47ee89ab883b2591573b"> 50</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa0afa124f1dfc47ee89ab883b2591573b">VM_METHOD_TYPE_ATTRSET</a>,</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa876dfcf064e4f083567badb52e606e0e"> 51</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa876dfcf064e4f083567badb52e606e0e">VM_METHOD_TYPE_IVAR</a>,</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa851a2c8d2c25891b7d1ce87759b31de0"> 52</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa851a2c8d2c25891b7d1ce87759b31de0">VM_METHOD_TYPE_BMETHOD</a>,</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aaa25014eba914ecd4478a515ff4690aa1"> 53</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aaa25014eba914ecd4478a515ff4690aa1">VM_METHOD_TYPE_ZSUPER</a>,</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aaffd01b8301fa1cc0cbd6a6aca6583153"> 54</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aaffd01b8301fa1cc0cbd6a6aca6583153">VM_METHOD_TYPE_UNDEF</a>,</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa5d67e9c72f82a6988ec1a37a93ee55b5"> 55</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa5d67e9c72f82a6988ec1a37a93ee55b5">VM_METHOD_TYPE_NOTIMPLEMENTED</a>,</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa2eada169dedcc0ee758832fca8dffd2a"> 56</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa2eada169dedcc0ee758832fca8dffd2a">VM_METHOD_TYPE_OPTIMIZED</a>, <span class="comment">/* Kernel#send, Proc#call, etc */</span></div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa63a0d73143740232b3482d940bfe52f8"> 57</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa63a0d73143740232b3482d940bfe52f8">VM_METHOD_TYPE_MISSING</a>, <span class="comment">/* wrapper for method_missing(id) */</span></div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa3005b11856cb15e1bdcfface3ac0151d"> 58</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa3005b11856cb15e1bdcfface3ac0151d">VM_METHOD_TYPE_REFINED</a>,</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <a class="code" href="../../db/d0a/method_8h.html#afa7840a585cb0f817a0c6bb51c3cd710">END_OF_ENUMERATION</a>(VM_METHOD_TYPE)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> } <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687a">rb_method_type_t</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">struct </span><a class="code" href="../../d9/d68/structrb__call__info__struct.html">rb_call_info_struct</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="../../d1/d2e/structrb__method__cfunc__struct.html"> 65</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html">rb_method_cfunc_struct</a> {</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="../../d1/d2e/structrb__method__cfunc__struct.html#a5a413d5048a825ca069c594d36f53f17"> 66</a></span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> (*<a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html#a5a413d5048a825ca069c594d36f53f17">func</a>)(<a class="code" href="../../d8/db0/defines_8h.html#af4fd7cbafda9af704310f78516042dfb">ANYARGS</a>);</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="../../d1/d2e/structrb__method__cfunc__struct.html#abdd9767de00f947a546b261ab8169d69"> 67</a></span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> (*<a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html#abdd9767de00f947a546b261ab8169d69">invoker</a>)(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> (*<a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html#a5a413d5048a825ca069c594d36f53f17">func</a>)(<a class="code" href="../../d8/db0/defines_8h.html#af4fd7cbafda9af704310f78516042dfb">ANYARGS</a>), <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> recv, <span class="keywordtype">int</span> <a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html#a1f7a9ee0ee4ac74e422517923d65c6ed">argc</a>, <span class="keyword">const</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> *<a class="code" href="../../df/d77/ruby_8c.html#af2efa898e9eed6fe6715279cb1ec35b0">argv</a>);</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="../../d1/d2e/structrb__method__cfunc__struct.html#a1f7a9ee0ee4ac74e422517923d65c6ed"> 68</a></span>  <span class="keywordtype">int</span> <a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html#a1f7a9ee0ee4ac74e422517923d65c6ed">argc</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> } <a class="code" href="../../db/d0a/method_8h.html#a89e99901f35d21333d097f486eda25ff">rb_method_cfunc_t</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="../../d2/d79/structrb__method__attr__struct.html"> 71</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="../../d2/d79/structrb__method__attr__struct.html">rb_method_attr_struct</a> {</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="../../d2/d79/structrb__method__attr__struct.html#a2b24f4b4999698edfe2309b7dda35991"> 72</a></span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <a class="code" href="../../d2/d79/structrb__method__attr__struct.html#a2b24f4b4999698edfe2309b7dda35991">id</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="../../d2/d79/structrb__method__attr__struct.html#a8177e02dd2f8ef36ed19418890ad2026"> 73</a></span>  <span class="keyword">const</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../d2/d79/structrb__method__attr__struct.html#a8177e02dd2f8ef36ed19418890ad2026">location</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> } <a class="code" href="../../db/d0a/method_8h.html#a768258915dcad0ec3512cfcd4c102924">rb_method_attr_t</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#ab6b4f5ac0a242e7c1816570c5e0f9266"> 76</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="../../d6/de3/structrb__iseq__struct.html">rb_iseq_struct</a> <a class="code" href="../../d6/de3/structrb__iseq__struct.html">rb_iseq_t</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html"> 78</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="../../d6/dab/structrb__method__definition__struct.html">rb_method_definition_struct</a> {</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a60ad63aa9037403df6e773853973c41b"> 79</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687a">rb_method_type_t</a> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a60ad63aa9037403df6e773853973c41b">type</a>; <span class="comment">/* method type */</span></div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a7fc0edb8505a61f8ae8bf2544fa7f676"> 80</a></span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a7fc0edb8505a61f8ae8bf2544fa7f676">original_id</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keyword">union </span>{</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a6a1232403665d4e8f270bbd93d3dba77"> 82</a></span>  <a class="code" href="../../d6/de3/structrb__iseq__struct.html">rb_iseq_t</a> * <span class="keyword">const</span> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a6a1232403665d4e8f270bbd93d3dba77">iseq</a>; <span class="comment">/* should be mark */</span></div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#abd329358f778cc61d4983a63b33c587e"> 83</a></span>  <a class="code" href="../../d1/d2e/structrb__method__cfunc__struct.html">rb_method_cfunc_t</a> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#abd329358f778cc61d4983a63b33c587e">cfunc</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a8dc19a3a32e0b6fe94d3418cddb06170"> 84</a></span>  <a class="code" href="../../d2/d79/structrb__method__attr__struct.html">rb_method_attr_t</a> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a8dc19a3a32e0b6fe94d3418cddb06170">attr</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a26a245c9a83a7e6dce1b68b802c935f2"> 85</a></span>  <span class="keyword">const</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a26a245c9a83a7e6dce1b68b802c935f2">proc</a>; <span class="comment">/* should be mark */</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keyword">enum</span> method_optimized_type {</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#aea6e8714c6fa8fd1f22994f31e90f964"> 87</a></span>  <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#aea6e8714c6fa8fd1f22994f31e90f964">OPTIMIZED_METHOD_TYPE_SEND</a>,</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a7b6eca76f6e5aefec477ead08c583791"> 88</a></span>  <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a7b6eca76f6e5aefec477ead08c583791">OPTIMIZED_METHOD_TYPE_CALL</a>,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#aa378256891f52089dc9ec3366637df1a"> 90</a></span>  <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#aa378256891f52089dc9ec3366637df1a">OPTIMIZED_METHOD_TYPE__MAX</a></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  } <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#ac9a2b531ab9d87f9e44dcd530321c0f4">optimize_type</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#af525ec0f3df96834355cea572af92e76"> 92</a></span>  <span class="keyword">struct </span><a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_struct</a> *<a class="code" href="../../d6/dab/structrb__method__definition__struct.html#af525ec0f3df96834355cea572af92e76">orig_me</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  } <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a45a55fae18a0a7f77d378532bb8a9069">body</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="../../d6/dab/structrb__method__definition__struct.html#a8e0ba2187ce82efc9805217145c1bf77"> 94</a></span>  <span class="keywordtype">int</span> <a class="code" href="../../d6/dab/structrb__method__definition__struct.html#a8e0ba2187ce82efc9805217145c1bf77">alias_count</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> } <a class="code" href="../../db/d0a/method_8h.html#ad423704bfab0afa650289e7ce7d4e0c5">rb_method_definition_t</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="../../d7/db7/structrb__method__entry__struct.html"> 97</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_struct</a> {</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="../../d7/db7/structrb__method__entry__struct.html#acd723fa7190ed8785ef776bfd3b0d1f4"> 98</a></span>  <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439">rb_method_flag_t</a> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html#acd723fa7190ed8785ef776bfd3b0d1f4">flag</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="../../d7/db7/structrb__method__entry__struct.html#a83823dc98ec32525da1b065abf79403b"> 99</a></span>  <span class="keywordtype">char</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html#a83823dc98ec32525da1b065abf79403b">mark</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="../../d7/db7/structrb__method__entry__struct.html#a6c868c50e67b757c6324dfef0f3184dc"> 100</a></span>  <a class="code" href="../../d6/dab/structrb__method__definition__struct.html">rb_method_definition_t</a> *<a class="code" href="../../d7/db7/structrb__method__entry__struct.html#a6c868c50e67b757c6324dfef0f3184dc">def</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="../../d7/db7/structrb__method__entry__struct.html#a31439bd620e98940410ba59244a85eae"> 101</a></span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html#a31439bd620e98940410ba59244a85eae">called_id</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="../../d7/db7/structrb__method__entry__struct.html#a9ce0871480ac405b00673b25234738de"> 102</a></span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html#a9ce0871480ac405b00673b25234738de">klass</a>; <span class="comment">/* should be mark */</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span> } <a class="code" href="../../db/d0a/method_8h.html#a9f49c3e8b85990ebe52659a6b4f6d5b1">rb_method_entry_t</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="../../d4/dd6/structunlinked__method__entry__list__entry.html"> 105</a></span> <span class="keyword">struct </span><a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html">unlinked_method_entry_list_entry</a> {</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#a35d3ed3a6899a5781537d0cb422a54ee"> 106</a></span>  <span class="keyword">struct </span><a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html">unlinked_method_entry_list_entry</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#a35d3ed3a6899a5781537d0cb422a54ee">next</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71"> 107</a></span>  <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> };</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#aaa8e7bfb9a59a81763a11e426287f124"> 110</a></span> <span class="preprocessor">#define UNDEFINED_METHOD_ENTRY_P(me) (!(me) || !(me)->def || (me)->def->type == VM_METHOD_TYPE_UNDEF)</span></div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="../../db/d0a/method_8h.html#a6e59ac93bf78f28e566677683b3243a1"> 111</a></span> <span class="preprocessor">#define UNDEFINED_REFINED_METHOD_P(def) \</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor"> ((def)->type == VM_METHOD_TYPE_REFINED && \</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor"> UNDEFINED_METHOD_ENTRY_P((def)->body.orig_me))</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#a60ad623f5610ed645f890af8c69be399">rb_add_method_cfunc</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> mid, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> (*<a class="code" href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a>)(<a class="code" href="../../d8/db0/defines_8h.html#af4fd7cbafda9af704310f78516042dfb">ANYARGS</a>), <span class="keywordtype">int</span> <a class="code" href="../../df/d77/ruby_8c.html#ad1447518f4372828b8435ae82e48499e">argc</a>, <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439">rb_method_flag_t</a> noex);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#af24b4bc2104eeb955b312d41bb492c5c">rb_add_method</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> mid, <a class="code" href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687a">rb_method_type_t</a> <a class="code" href="../../d5/d9d/tcltklib_8c.html#ac765329451135abec74c45e1897abf26">type</a>, <span class="keywordtype">void</span> *option, <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439">rb_method_flag_t</a> noex);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#ada2b4368066fe3e00cffe2e6b657de16">rb_method_entry</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> *define_class_ptr);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#a1652db1f3a7add221845cb06fb8a9beb">rb_method_entry_at</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> obj, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#a47d73d1d7c4983dc3a1212f46283c67c">rb_add_refined_method_entry</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> refined_class, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> mid);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#a2ee3e43a7540962a2a8ebe6536f2256c">rb_resolve_refined_method</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> refinements,</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>,</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> *defined_class_ptr);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#acae272a63cce84872057c10a08d97419">rb_method_entry_with_refinements</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>,</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> *defined_class_ptr);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#a9b09c4b2f8f651c735987e42d48bb988">rb_method_entry_without_refinements</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>,</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> *defined_class_ptr);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#aae6bedff9f9258dac796323a61b38824">rb_method_entry_get_without_cache</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> *define_class_ptr);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../db/d0a/method_8h.html#a1b4e7cbe648b25d7ce1c4351e5fa764f">rb_method_entry_set</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> klass, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> mid, <span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *, <a class="code" href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439">rb_method_flag_t</a> noex);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">int</span> <a class="code" href="../../db/d0a/method_8h.html#a1aebafc093da93cbb5651bd92189bbd2">rb_method_entry_arity</a>(<span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordtype">int</span> <a class="code" href="../../db/d0a/method_8h.html#a0c1ae88a35467b0de5f25e21e3150117">rb_method_entry_eq</a>(<span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *m1, <span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *m2);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <a class="code" href="../../dd/d24/st_8h.html#ac214e5cdcf0de6a2108b9643e7fc12e0">st_index_t</a> <a class="code" href="../../db/d0a/method_8h.html#af06c0a43e69988a1f95731a75e8f089b">rb_hash_method_entry</a>(<a class="code" href="../../dd/d24/st_8h.html#ac214e5cdcf0de6a2108b9643e7fc12e0">st_index_t</a> <a class="code" href="../../d3/deb/lex_8c.html#a5541f85ce416df233cce93949f0eeeca">hash</a>, <span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../db/d0a/method_8h.html#a1c11bb1fe596aa136bb8c64fd50c4001">rb_method_entry_location</a>(<a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../db/d0a/method_8h.html#a5a7cb0b513156529bc0fc63f97f97911">rb_mod_method_location</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../d1/d6f/date__strftime_8c.html#aa84d960185b18347956518e4d00766b4">mod</a>, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../db/d0a/method_8h.html#a6a22488bc87f1953c9227dc878cd8ca7">rb_obj_method_location</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> obj, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a> <span class="keywordtype">id</span>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#aac91fd74442afdfbafcdaf2c54f92240">rb_mark_method_entry</a>(<span class="keyword">const</span> <a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#a8a35ddad7e9cc63983104d205c812919">rb_free_method_entry</a>(<a class="code" href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_t</a> *<a class="code" href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">me</a>);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#ad9ab3245b7b5f28802c3f74d1b30a949">rb_sweep_method_entry</a>(<span class="keywordtype">void</span> *vm);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#a66d83f29d11cb5b7cab75bd4224da97d">rb_free_m_tbl</a>(<a class="code" href="../../d0/ddd/structst__table.html">st_table</a> *tbl);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordtype">void</span> <a class="code" href="../../db/d0a/method_8h.html#ad64465498a480bdad486d1146b3dc428">rb_free_m_tbl_wrapper</a>(<span class="keyword">struct</span> <a class="code" href="../../d2/d0c/structmethod__table__wrapper.html">method_table_wrapper</a> *wrapper);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor">#endif </span><span class="comment">/* METHOD_H */</span><span class="preprocessor"></span></div><div class="ttc" id="structmethod__table__wrapper_html"><div class="ttname"><a href="../../d2/d0c/structmethod__table__wrapper.html">method_table_wrapper</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/dde/internal_8h_source.html#l00282">internal.h:282</a></div></div> <div class="ttc" id="structunlinked__method__entry__list__entry_html_a35d3ed3a6899a5781537d0cb422a54ee"><div class="ttname"><a href="../../d4/dd6/structunlinked__method__entry__list__entry.html#a35d3ed3a6899a5781537d0cb422a54ee">unlinked_method_entry_list_entry::next</a></div><div class="ttdeci">struct unlinked_method_entry_list_entry * next</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00106">method.h:106</a></div></div> <div class="ttc" id="structrb__method__entry__struct_html_a83823dc98ec32525da1b065abf79403b"><div class="ttname"><a href="../../d7/db7/structrb__method__entry__struct.html#a83823dc98ec32525da1b065abf79403b">rb_method_entry_struct::mark</a></div><div class="ttdeci">char mark</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00099">method.h:99</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa63a0d73143740232b3482d940bfe52f8"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa63a0d73143740232b3482d940bfe52f8">VM_METHOD_TYPE_MISSING</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00057">method.h:57</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html">rb_method_definition_struct</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00078">method.h:78</a></div></div> <div class="ttc" id="structrb__method__attr__struct_html"><div class="ttname"><a href="../../d2/d79/structrb__method__attr__struct.html">rb_method_attr_struct</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00071">method.h:71</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a3bc69bb425422fec148df526033801c8"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3bc69bb425422fec148df526033801c8">NOEX_RESPONDS</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00035">method.h:35</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a60ad63aa9037403df6e773853973c41b"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a60ad63aa9037403df6e773853973c41b">rb_method_definition_struct::type</a></div><div class="ttdeci">rb_method_type_t type</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00079">method.h:79</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a8dc19a3a32e0b6fe94d3418cddb06170"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a8dc19a3a32e0b6fe94d3418cddb06170">rb_method_definition_struct::attr</a></div><div class="ttdeci">rb_method_attr_t attr</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00084">method.h:84</a></div></div> <div class="ttc" id="structst__table_html"><div class="ttname"><a href="../../d0/ddd/structst__table.html">st_table</a></div><div class="ttdef"><b>Definition:</b> <a href="../../dd/d24/st_8h_source.html#l00069">st.h:69</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a7b6eca76f6e5aefec477ead08c583791"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a7b6eca76f6e5aefec477ead08c583791">rb_method_definition_struct::OPTIMIZED_METHOD_TYPE_CALL</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00088">method.h:88</a></div></div> <div class="ttc" id="structrb__method__attr__struct_html_a8177e02dd2f8ef36ed19418890ad2026"><div class="ttname"><a href="../../d2/d79/structrb__method__attr__struct.html#a8177e02dd2f8ef36ed19418890ad2026">rb_method_attr_struct::location</a></div><div class="ttdeci">const VALUE location</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00073">method.h:73</a></div></div> <div class="ttc" id="structrb__method__entry__struct_html_acd723fa7190ed8785ef776bfd3b0d1f4"><div class="ttname"><a href="../../d7/db7/structrb__method__entry__struct.html#acd723fa7190ed8785ef776bfd3b0d1f4">rb_method_entry_struct::flag</a></div><div class="ttdeci">rb_method_flag_t flag</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00098">method.h:98</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a60753f4c8511e58fc3d7288198c9672c"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a60753f4c8511e58fc3d7288198c9672c">NOEX_SUPER</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00033">method.h:33</a></div></div> <div class="ttc" id="method_8h_html_a5a7cb0b513156529bc0fc63f97f97911"><div class="ttname"><a href="../../db/d0a/method_8h.html#a5a7cb0b513156529bc0fc63f97f97911">rb_mod_method_location</a></div><div class="ttdeci">VALUE rb_mod_method_location(VALUE mod, ID id)</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/dda/proc_8c_source.html#l02171">proc.c:2171</a></div></div> <div class="ttc" id="method_8h_html_a9b09c4b2f8f651c735987e42d48bb988"><div class="ttname"><a href="../../db/d0a/method_8h.html#a9b09c4b2f8f651c735987e42d48bb988">rb_method_entry_without_refinements</a></div><div class="ttdeci">rb_method_entry_t * rb_method_entry_without_refinements(VALUE klass, ID id, VALUE *defined_class_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00706">vm_method.c:706</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_af525ec0f3df96834355cea572af92e76"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#af525ec0f3df96834355cea572af92e76">rb_method_definition_struct::orig_me</a></div><div class="ttdeci">struct rb_method_entry_struct * orig_me</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00092">method.h:92</a></div></div> <div class="ttc" id="method_8h_html_a768258915dcad0ec3512cfcd4c102924"><div class="ttname"><a href="../../db/d0a/method_8h.html#a768258915dcad0ec3512cfcd4c102924">rb_method_attr_t</a></div><div class="ttdeci">struct rb_method_attr_struct rb_method_attr_t</div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa09fd70c8c3426502348b7df7c121e505"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa09fd70c8c3426502348b7df7c121e505">VM_METHOD_TYPE_ISEQ</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00048">method.h:48</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439">rb_method_flag_t</a></div><div class="ttdeci">rb_method_flag_t</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00024">method.h:24</a></div></div> <div class="ttc" id="ossl__ssl_8c_html_a86771351f4ef469ab9c94739a64fd7ea"><div class="ttname"><a href="../../dc/dd1/ossl__ssl_8c.html#a86771351f4ef469ab9c94739a64fd7ea">func</a></div><div class="ttdeci">SSL_METHOD *(* func)(void)</div><div class="ttdef"><b>Definition:</b> <a href="../../dc/dd1/ossl__ssl_8c_source.html#l00113">ossl_ssl.c:113</a></div></div> <div class="ttc" id="method_8h_html_aac91fd74442afdfbafcdaf2c54f92240"><div class="ttname"><a href="../../db/d0a/method_8h.html#aac91fd74442afdfbafcdaf2c54f92240">rb_mark_method_entry</a></div><div class="ttdeci">void rb_mark_method_entry(const rb_method_entry_t *me)</div><div class="ttdef"><b>Definition:</b> <a href="../../d8/d16/gc_8c_source.html#l03420">gc.c:3420</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a50775b7233e9bb462c3703a6511e02d1"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a50775b7233e9bb462c3703a6511e02d1">NOEX_MODFUNC</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00032">method.h:32</a></div></div> <div class="ttc" id="structrb__method__entry__struct_html_a31439bd620e98940410ba59244a85eae"><div class="ttname"><a href="../../d7/db7/structrb__method__entry__struct.html#a31439bd620e98940410ba59244a85eae">rb_method_entry_struct::called_id</a></div><div class="ttdeci">ID called_id</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00101">method.h:101</a></div></div> <div class="ttc" id="method_8h_html_ad9ab3245b7b5f28802c3f74d1b30a949"><div class="ttname"><a href="../../db/d0a/method_8h.html#ad9ab3245b7b5f28802c3f74d1b30a949">rb_sweep_method_entry</a></div><div class="ttdeci">void rb_sweep_method_entry(void *vm)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00137">vm_method.c:137</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a26a245c9a83a7e6dce1b68b802c935f2"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a26a245c9a83a7e6dce1b68b802c935f2">rb_method_definition_struct::proc</a></div><div class="ttdeci">const VALUE proc</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00085">method.h:85</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a45a55fae18a0a7f77d378532bb8a9069"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a45a55fae18a0a7f77d378532bb8a9069">rb_method_definition_struct::body</a></div><div class="ttdeci">union rb_method_definition_struct::@126 body</div></div> <div class="ttc" id="method_8h_html_a9f49c3e8b85990ebe52659a6b4f6d5b1"><div class="ttname"><a href="../../db/d0a/method_8h.html#a9f49c3e8b85990ebe52659a6b4f6d5b1">rb_method_entry_t</a></div><div class="ttdeci">struct rb_method_entry_struct rb_method_entry_t</div></div> <div class="ttc" id="st_8h_html_ac214e5cdcf0de6a2108b9643e7fc12e0"><div class="ttname"><a href="../../dd/d24/st_8h.html#ac214e5cdcf0de6a2108b9643e7fc12e0">st_index_t</a></div><div class="ttdeci">st_data_t st_index_t</div><div class="ttdef"><b>Definition:</b> <a href="../../dd/d24/st_8h_source.html#l00048">st.h:48</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a89772c44f8ad525a290f1fd86dbc7467"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a89772c44f8ad525a290f1fd86dbc7467">NOEX_BASIC</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00030">method.h:30</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa851a2c8d2c25891b7d1ce87759b31de0"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa851a2c8d2c25891b7d1ce87759b31de0">VM_METHOD_TYPE_BMETHOD</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00052">method.h:52</a></div></div> <div class="ttc" id="structrb__method__attr__struct_html_a2b24f4b4999698edfe2309b7dda35991"><div class="ttname"><a href="../../d2/d79/structrb__method__attr__struct.html#a2b24f4b4999698edfe2309b7dda35991">rb_method_attr_struct::id</a></div><div class="ttdeci">ID id</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00072">method.h:72</a></div></div> <div class="ttc" id="structrb__method__cfunc__struct_html_a1f7a9ee0ee4ac74e422517923d65c6ed"><div class="ttname"><a href="../../d1/d2e/structrb__method__cfunc__struct.html#a1f7a9ee0ee4ac74e422517923d65c6ed">rb_method_cfunc_struct::argc</a></div><div class="ttdeci">int argc</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00068">method.h:68</a></div></div> <div class="ttc" id="method_8h_html_ad423704bfab0afa650289e7ce7d4e0c5"><div class="ttname"><a href="../../db/d0a/method_8h.html#ad423704bfab0afa650289e7ce7d4e0c5">rb_method_definition_t</a></div><div class="ttdeci">struct rb_method_definition_struct rb_method_definition_t</div></div> <div class="ttc" id="method_8h_html_a0c1ae88a35467b0de5f25e21e3150117"><div class="ttname"><a href="../../db/d0a/method_8h.html#a0c1ae88a35467b0de5f25e21e3150117">rb_method_entry_eq</a></div><div class="ttdeci">int rb_method_entry_eq(const rb_method_entry_t *m1, const rb_method_entry_t *m2)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l01167">vm_method.c:1167</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa3005b11856cb15e1bdcfface3ac0151d"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa3005b11856cb15e1bdcfface3ac0151d">VM_METHOD_TYPE_REFINED</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00058">method.h:58</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a7fc0edb8505a61f8ae8bf2544fa7f676"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a7fc0edb8505a61f8ae8bf2544fa7f676">rb_method_definition_struct::original_id</a></div><div class="ttdeci">ID original_id</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00080">method.h:80</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a7098707ff488047cda2e2b8cb67d0bc8"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a7098707ff488047cda2e2b8cb67d0bc8">NOEX_MASK</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00029">method.h:29</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_abd329358f778cc61d4983a63b33c587e"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#abd329358f778cc61d4983a63b33c587e">rb_method_definition_struct::cfunc</a></div><div class="ttdeci">rb_method_cfunc_t cfunc</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00083">method.h:83</a></div></div> <div class="ttc" id="method_8h_html_aae6bedff9f9258dac796323a61b38824"><div class="ttname"><a href="../../db/d0a/method_8h.html#aae6bedff9f9258dac796323a61b38824">rb_method_entry_get_without_cache</a></div><div class="ttdeci">rb_method_entry_t * rb_method_entry_get_without_cache(VALUE klass, ID id, VALUE *define_class_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00564">vm_method.c:564</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_aa378256891f52089dc9ec3366637df1a"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#aa378256891f52089dc9ec3366637df1a">rb_method_definition_struct::OPTIMIZED_METHOD_TYPE__MAX</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00090">method.h:90</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aaffd01b8301fa1cc0cbd6a6aca6583153"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aaffd01b8301fa1cc0cbd6a6aca6583153">VM_METHOD_TYPE_UNDEF</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00054">method.h:54</a></div></div> <div class="ttc" id="method_8h_html_a8a35ddad7e9cc63983104d205c812919"><div class="ttname"><a href="../../db/d0a/method_8h.html#a8a35ddad7e9cc63983104d205c812919">rb_free_method_entry</a></div><div class="ttdeci">void rb_free_method_entry(rb_method_entry_t *me)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00178">vm_method.c:178</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_ac9a2b531ab9d87f9e44dcd530321c0f4"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#ac9a2b531ab9d87f9e44dcd530321c0f4">rb_method_definition_struct::optimize_type</a></div><div class="ttdeci">enum rb_method_definition_struct::@126::method_optimized_type optimize_type</div></div> <div class="ttc" id="method_8h_html_ad64465498a480bdad486d1146b3dc428"><div class="ttname"><a href="../../db/d0a/method_8h.html#ad64465498a480bdad486d1146b3dc428">rb_free_m_tbl_wrapper</a></div><div class="ttdeci">void rb_free_m_tbl_wrapper(struct method_table_wrapper *wrapper)</div><div class="ttdef"><b>Definition:</b> <a href="../../d8/d16/gc_8c_source.html#l01450">gc.c:1450</a></div></div> <div class="ttc" id="method_8h_html_a1aebafc093da93cbb5651bd92189bbd2"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1aebafc093da93cbb5651bd92189bbd2">rb_method_entry_arity</a></div><div class="ttdeci">int rb_method_entry_arity(const rb_method_entry_t *me)</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/dda/proc_8c_source.html#l02031">proc.c:2031</a></div></div> <div class="ttc" id="ruby_8c_html_ad1447518f4372828b8435ae82e48499e"><div class="ttname"><a href="../../df/d77/ruby_8c.html#ad1447518f4372828b8435ae82e48499e">argc</a></div><div class="ttdeci">int argc</div><div class="ttdef"><b>Definition:</b> <a href="../../df/d77/ruby_8c_source.html#l00131">ruby.c:131</a></div></div> <div class="ttc" id="structrb__method__entry__struct_html"><div class="ttname"><a href="../../d7/db7/structrb__method__entry__struct.html">rb_method_entry_struct</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00097">method.h:97</a></div></div> <div class="ttc" id="method_8h_html_a2ee3e43a7540962a2a8ebe6536f2256c"><div class="ttname"><a href="../../db/d0a/method_8h.html#a2ee3e43a7540962a2a8ebe6536f2256c">rb_resolve_refined_method</a></div><div class="ttdeci">rb_method_entry_t * rb_resolve_refined_method(VALUE refinements, const rb_method_entry_t *me, VALUE *defined_class_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00660">vm_method.c:660</a></div></div> <div class="ttc" id="method_8h_html_ada2b4368066fe3e00cffe2e6b657de16"><div class="ttname"><a href="../../db/d0a/method_8h.html#ada2b4368066fe3e00cffe2e6b657de16">rb_method_entry</a></div><div class="ttdeci">rb_method_entry_t * rb_method_entry(VALUE klass, ID id, VALUE *define_class_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00617">vm_method.c:617</a></div></div> <div class="ttc" id="structrb__method__entry__struct_html_a9ce0871480ac405b00673b25234738de"><div class="ttname"><a href="../../d7/db7/structrb__method__entry__struct.html#a9ce0871480ac405b00673b25234738de">rb_method_entry_struct::klass</a></div><div class="ttdeci">VALUE klass</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00102">method.h:102</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa5d67e9c72f82a6988ec1a37a93ee55b5"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa5d67e9c72f82a6988ec1a37a93ee55b5">VM_METHOD_TYPE_NOTIMPLEMENTED</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00055">method.h:55</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687a"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687a">rb_method_type_t</a></div><div class="ttdeci">rb_method_type_t</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00047">method.h:47</a></div></div> <div class="ttc" id="structrb__method__cfunc__struct_html"><div class="ttname"><a href="../../d1/d2e/structrb__method__cfunc__struct.html">rb_method_cfunc_struct</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00065">method.h:65</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa0afa124f1dfc47ee89ab883b2591573b"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa0afa124f1dfc47ee89ab883b2591573b">VM_METHOD_TYPE_ATTRSET</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00050">method.h:50</a></div></div> <div class="ttc" id="method_8h_html_acae272a63cce84872057c10a08d97419"><div class="ttname"><a href="../../db/d0a/method_8h.html#acae272a63cce84872057c10a08d97419">rb_method_entry_with_refinements</a></div><div class="ttdeci">rb_method_entry_t * rb_method_entry_with_refinements(VALUE klass, ID id, VALUE *defined_class_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00688">vm_method.c:688</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a6a1232403665d4e8f270bbd93d3dba77"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a6a1232403665d4e8f270bbd93d3dba77">rb_method_definition_struct::iseq</a></div><div class="ttdeci">rb_iseq_t *const iseq</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00082">method.h:82</a></div></div> <div class="ttc" id="structrb__method__cfunc__struct_html_abdd9767de00f947a546b261ab8169d69"><div class="ttname"><a href="../../d1/d2e/structrb__method__cfunc__struct.html#abdd9767de00f947a546b261ab8169d69">rb_method_cfunc_struct::invoker</a></div><div class="ttdeci">VALUE(* invoker)(VALUE(*func)(ANYARGS), VALUE recv, int argc, const VALUE *argv)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00067">method.h:67</a></div></div> <div class="ttc" id="method_8h_html_af24b4bc2104eeb955b312d41bb492c5c"><div class="ttname"><a href="../../db/d0a/method_8h.html#af24b4bc2104eeb955b312d41bb492c5c">rb_add_method</a></div><div class="ttdeci">rb_method_entry_t * rb_add_method(VALUE klass, ID mid, rb_method_type_t type, void *option, rb_method_flag_t noex)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00428">vm_method.c:428</a></div></div> <div class="ttc" id="structrb__method__cfunc__struct_html_a5a413d5048a825ca069c594d36f53f17"><div class="ttname"><a href="../../d1/d2e/structrb__method__cfunc__struct.html#a5a413d5048a825ca069c594d36f53f17">rb_method_cfunc_struct::func</a></div><div class="ttdeci">VALUE(* func)(ANYARGS)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00066">method.h:66</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a7cf3718c769f26d8dd9aefcc6ef86b28"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a7cf3718c769f26d8dd9aefcc6ef86b28">NOEX_SAFE_SHIFT_OFFSET</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00038">method.h:38</a></div></div> <div class="ttc" id="internal_8h_html"><div class="ttname"><a href="../../db/dde/internal_8h.html">internal.h</a></div></div> <div class="ttc" id="ruby_2ruby_8h_html_afa5b9137f051ac26d7ccc8824f178233"><div class="ttname"><a href="../../de/de6/ruby_2ruby_8h.html#afa5b9137f051ac26d7ccc8824f178233">ID</a></div><div class="ttdeci">unsigned long ID</div><div class="ttdef"><b>Definition:</b> <a href="../../de/de6/ruby_2ruby_8h_source.html#l00089">ruby.h:89</a></div></div> <div class="ttc" id="method_8h_html_af06c0a43e69988a1f95731a75e8f089b"><div class="ttname"><a href="../../db/d0a/method_8h.html#af06c0a43e69988a1f95731a75e8f089b">rb_hash_method_entry</a></div><div class="ttdeci">st_index_t rb_hash_method_entry(st_index_t hash, const rb_method_entry_t *me)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l01249">vm_method.c:1249</a></div></div> <div class="ttc" id="tcltklib_8c_html_ac765329451135abec74c45e1897abf26"><div class="ttname"><a href="../../d5/d9d/tcltklib_8c.html#ac765329451135abec74c45e1897abf26">type</a></div><div class="ttdeci">int type</div><div class="ttdef"><b>Definition:</b> <a href="../../d5/d9d/tcltklib_8c_source.html#l00112">tcltklib.c:112</a></div></div> <div class="ttc" id="ruby_2ruby_8h_html_a3c1d4bfc6a81af60bdcb48744c35f760"><div class="ttname"><a href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a></div><div class="ttdeci">unsigned long VALUE</div><div class="ttdef"><b>Definition:</b> <a href="../../de/de6/ruby_2ruby_8h_source.html#l00088">ruby.h:88</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a0854498e40d4e26dd716a0ceba556439"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a0854498e40d4e26dd716a0ceba556439">NOEX_PROTECTED</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00028">method.h:28</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa2eada169dedcc0ee758832fca8dffd2a"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa2eada169dedcc0ee758832fca8dffd2a">VM_METHOD_TYPE_OPTIMIZED</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00056">method.h:56</a></div></div> <div class="ttc" id="method_8h_html_a89e99901f35d21333d097f486eda25ff"><div class="ttname"><a href="../../db/d0a/method_8h.html#a89e99901f35d21333d097f486eda25ff">rb_method_cfunc_t</a></div><div class="ttdeci">struct rb_method_cfunc_struct rb_method_cfunc_t</div></div> <div class="ttc" id="method_8h_html_a1c11bb1fe596aa136bb8c64fd50c4001"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1c11bb1fe596aa136bb8c64fd50c4001">rb_method_entry_location</a></div><div class="ttdeci">VALUE rb_method_entry_location(rb_method_entry_t *me)</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/dda/proc_8c_source.html#l02164">proc.c:2164</a></div></div> <div class="ttc" id="method_8h_html_a1652db1f3a7add221845cb06fb8a9beb"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1652db1f3a7add221845cb06fb8a9beb">rb_method_entry_at</a></div><div class="ttdeci">rb_method_entry_t * rb_method_entry_at(VALUE obj, ID id)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00552">vm_method.c:552</a></div></div> <div class="ttc" id="method_8h_html_afa7840a585cb0f817a0c6bb51c3cd710"><div class="ttname"><a href="../../db/d0a/method_8h.html#afa7840a585cb0f817a0c6bb51c3cd710">END_OF_ENUMERATION</a></div><div class="ttdeci">#define END_OF_ENUMERATION(key)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00020">method.h:20</a></div></div> <div class="ttc" id="structrb__method__entry__struct_html_a6c868c50e67b757c6324dfef0f3184dc"><div class="ttname"><a href="../../d7/db7/structrb__method__entry__struct.html#a6c868c50e67b757c6324dfef0f3184dc">rb_method_entry_struct::def</a></div><div class="ttdeci">rb_method_definition_t * def</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00100">method.h:100</a></div></div> <div class="ttc" id="defines_8h_html_af4fd7cbafda9af704310f78516042dfb"><div class="ttname"><a href="../../d8/db0/defines_8h.html#af4fd7cbafda9af704310f78516042dfb">ANYARGS</a></div><div class="ttdeci">#define ANYARGS</div><div class="ttdef"><b>Definition:</b> <a href="../../d8/db0/defines_8h_source.html#l00098">defines.h:98</a></div></div> <div class="ttc" id="structrb__call__info__struct_html"><div class="ttname"><a href="../../d9/d68/structrb__call__info__struct.html">rb_call_info_struct</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d8/d32/vm__core_8h_source.html#l00155">vm_core.h:155</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_aea6e8714c6fa8fd1f22994f31e90f964"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#aea6e8714c6fa8fd1f22994f31e90f964">rb_method_definition_struct::OPTIMIZED_METHOD_TYPE_SEND</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00087">method.h:87</a></div></div> <div class="ttc" id="method_8h_html_a47d73d1d7c4983dc3a1212f46283c67c"><div class="ttname"><a href="../../db/d0a/method_8h.html#a47d73d1d7c4983dc3a1212f46283c67c">rb_add_refined_method_entry</a></div><div class="ttdeci">void rb_add_refined_method_entry(VALUE refined_class, ID mid)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00221">vm_method.c:221</a></div></div> <div class="ttc" id="lex_8c_html_a5541f85ce416df233cce93949f0eeeca"><div class="ttname"><a href="../../d3/deb/lex_8c.html#a5541f85ce416df233cce93949f0eeeca">hash</a></div><div class="ttdeci">static unsigned int hash(const char *str, unsigned int len)</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/deb/lex_8c_source.html#l00056">lex.c:56</a></div></div> <div class="ttc" id="structrb__iseq__struct_html"><div class="ttname"><a href="../../d6/de3/structrb__iseq__struct.html">rb_iseq_struct</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d8/d32/vm__core_8h_source.html#l00206">vm_core.h:206</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a3adc24e1d2a8eee73ecd89ff8679ae0f"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a3adc24e1d2a8eee73ecd89ff8679ae0f">NOEX_BIT_WIDTH</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00037">method.h:37</a></div></div> <div class="ttc" id="structunlinked__method__entry__list__entry_html_add9432cc138ba8162cf3db4dd6bbab71"><div class="ttname"><a href="../../d4/dd6/structunlinked__method__entry__list__entry.html#add9432cc138ba8162cf3db4dd6bbab71">unlinked_method_entry_list_entry::me</a></div><div class="ttdeci">rb_method_entry_t * me</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00107">method.h:107</a></div></div> <div class="ttc" id="structrb__method__definition__struct_html_a8e0ba2187ce82efc9805217145c1bf77"><div class="ttname"><a href="../../d6/dab/structrb__method__definition__struct.html#a8e0ba2187ce82efc9805217145c1bf77">rb_method_definition_struct::alias_count</a></div><div class="ttdeci">int alias_count</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00094">method.h:94</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa1691810af54507b018d2639b60e8057d"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa1691810af54507b018d2639b60e8057d">VM_METHOD_TYPE_CFUNC</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00049">method.h:49</a></div></div> <div class="ttc" id="method_8h_html_a1b4e7cbe648b25d7ce1c4351e5fa764f"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1b4e7cbe648b25d7ce1c4351e5fa764f">rb_method_entry_set</a></div><div class="ttdeci">rb_method_entry_t * rb_method_entry_set(VALUE klass, ID mid, const rb_method_entry_t *, rb_method_flag_t noex)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00504">vm_method.c:504</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439acbaffd02a49dab8af6ca3bcde9336f30"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439acbaffd02a49dab8af6ca3bcde9336f30">NOEX_PUBLIC</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00025">method.h:25</a></div></div> <div class="ttc" id="date__strftime_8c_html_aa84d960185b18347956518e4d00766b4"><div class="ttname"><a href="../../d1/d6f/date__strftime_8c.html#aa84d960185b18347956518e4d00766b4">mod</a></div><div class="ttdeci">#define mod(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d6f/date__strftime_8c_source.html#l00028">date_strftime.c:28</a></div></div> <div class="ttc" id="method_8h_html_a60ad623f5610ed645f890af8c69be399"><div class="ttname"><a href="../../db/d0a/method_8h.html#a60ad623f5610ed645f890af8c69be399">rb_add_method_cfunc</a></div><div class="ttdeci">void rb_add_method_cfunc(VALUE klass, ID mid, VALUE(*func)(ANYARGS), int argc, rb_method_flag_t noex)</div><div class="ttdef"><b>Definition:</b> <a href="../../de/d63/vm__method_8c_source.html#l00099">vm_method.c:99</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aa876dfcf064e4f083567badb52e606e0e"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aa876dfcf064e4f083567badb52e606e0e">VM_METHOD_TYPE_IVAR</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00051">method.h:51</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a67eab9ddcfb8fc376407c923b8e2346d"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a67eab9ddcfb8fc376407c923b8e2346d">NOEX_UNDEF</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00031">method.h:31</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a050f4f27ee3d53fb7245d5f8fd46c2c5"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a050f4f27ee3d53fb7245d5f8fd46c2c5">NOEX_VCALL</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00034">method.h:34</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439a155818970b18d63d59c83d22bc61803d"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439a155818970b18d63d59c83d22bc61803d">NOEX_PRIVATE</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00027">method.h:27</a></div></div> <div class="ttc" id="method_8h_html_a6a22488bc87f1953c9227dc878cd8ca7"><div class="ttname"><a href="../../db/d0a/method_8h.html#a6a22488bc87f1953c9227dc878cd8ca7">rb_obj_method_location</a></div><div class="ttdeci">VALUE rb_obj_method_location(VALUE obj, ID id)</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/dda/proc_8c_source.html#l02178">proc.c:2178</a></div></div> <div class="ttc" id="structunlinked__method__entry__list__entry_html"><div class="ttname"><a href="../../d4/dd6/structunlinked__method__entry__list__entry.html">unlinked_method_entry_list_entry</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00105">method.h:105</a></div></div> <div class="ttc" id="method_8h_html_a88a981f6cc69187ed9c2de2630a1687aaa25014eba914ecd4478a515ff4690aa1"><div class="ttname"><a href="../../db/d0a/method_8h.html#a88a981f6cc69187ed9c2de2630a1687aaa25014eba914ecd4478a515ff4690aa1">VM_METHOD_TYPE_ZSUPER</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00053">method.h:53</a></div></div> <div class="ttc" id="ruby_8c_html_af2efa898e9eed6fe6715279cb1ec35b0"><div class="ttname"><a href="../../df/d77/ruby_8c.html#af2efa898e9eed6fe6715279cb1ec35b0">argv</a></div><div class="ttdeci">char ** argv</div><div class="ttdef"><b>Definition:</b> <a href="../../df/d77/ruby_8c_source.html#l00132">ruby.c:132</a></div></div> <div class="ttc" id="method_8h_html_a1e54ff32a6191e40451e1523c61ca439abc0c737dc2f61e01b4727719e3fbda85"><div class="ttname"><a href="../../db/d0a/method_8h.html#a1e54ff32a6191e40451e1523c61ca439abc0c737dc2f61e01b4727719e3fbda85">NOEX_NOSUPER</a></div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0a/method_8h_source.html#l00026">method.h:26</a></div></div> <div class="ttc" id="method_8h_html_a66d83f29d11cb5b7cab75bd4224da97d"><div class="ttname"><a href="../../db/d0a/method_8h.html#a66d83f29d11cb5b7cab75bd4224da97d">rb_free_m_tbl</a></div><div class="ttdeci">void rb_free_m_tbl(st_table *tbl)</div><div class="ttdef"><b>Definition:</b> <a href="../../d8/d16/gc_8c_source.html#l01443">gc.c:1443</a></div></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="../../doxygen.png" alt="doxygen"/> </a> 1.8.14 </small></address> </body> </html>
💾 Save Changes
❌ Cancel