File "conversions_8h_source.html"
Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/ruby19/share/doc/ruby/html/da/dd6/conversions_8h_source.html
File size: 20.55 KB
MIME-type: text/html
Charset: utf-8
<!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: ext/fiddle/conversions.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">1.9.3p551(2014-11-13revision48407)</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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="../../dir_31cedd4509e06940f559c1ca2f722e02.html">ext</a></li><li class="navelem"><a class="el" href="../../dir_b43067c7e43fdbbf9fde9172c5a47ed3.html">fiddle</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">conversions.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="../../da/dd6/conversions_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="preprocessor">#ifndef FIDDLE_CONVERSIONS_H</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor">#define FIDDLE_CONVERSIONS_H</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> </div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="preprocessor">#include <<a class="code" href="../../d9/d2a/fiddle_8h.html">fiddle.h</a>></span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> </div><div class="line"><a name="l00006"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html"> 6</a></span> <span class="keyword">typedef</span> <span class="keyword">union</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> {</div><div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a873f5fc3eb69eacc70abdce0662c4dcf"> 8</a></span>  ffi_arg <a class="code" href="../../d2/d09/unionfiddle__generic.html#a873f5fc3eb69eacc70abdce0662c4dcf">fffi_arg</a>; <span class="comment">/* rvalue smaller than unsigned long */</span></div><div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a1d9425c1d677f734c6adbdb5209896f3"> 9</a></span>  ffi_sarg <a class="code" href="../../d2/d09/unionfiddle__generic.html#a1d9425c1d677f734c6adbdb5209896f3">fffi_sarg</a>; <span class="comment">/* rvalue smaller than signed long */</span></div><div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a4eb6086f612ef5d26e8101d75846f8c8"> 10</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#a4eb6086f612ef5d26e8101d75846f8c8">uchar</a>; <span class="comment">/* ffi_type_uchar */</span></div><div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a485a72794d70fa8fbf3189f60a719b73"> 11</a></span>  <span class="keywordtype">signed</span> <span class="keywordtype">char</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#a485a72794d70fa8fbf3189f60a719b73">schar</a>; <span class="comment">/* ffi_type_schar */</span></div><div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a2c360e3743cd5f164f78bb9cd2c2b6d2"> 12</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#a2c360e3743cd5f164f78bb9cd2c2b6d2">ushort</a>; <span class="comment">/* ffi_type_sshort */</span></div><div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#af12f8a3f854fee42dd129eb3f45515da"> 13</a></span>  <span class="keywordtype">signed</span> <span class="keywordtype">short</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#af12f8a3f854fee42dd129eb3f45515da">sshort</a>; <span class="comment">/* ffi_type_ushort */</span></div><div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a17ada95f57586c7901f06205116c5e83"> 14</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#a17ada95f57586c7901f06205116c5e83">uint</a>; <span class="comment">/* ffi_type_uint */</span></div><div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#af8eed75a7b8b0421ca9fba40cc85f38f"> 15</a></span>  <span class="keywordtype">signed</span> <span class="keywordtype">int</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#af8eed75a7b8b0421ca9fba40cc85f38f">sint</a>; <span class="comment">/* ffi_type_sint */</span></div><div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#ae3411099f0a94d7583a9092d16107b32"> 16</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#ae3411099f0a94d7583a9092d16107b32">ulong</a>; <span class="comment">/* ffi_type_ulong */</span></div><div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#aa6e969a05af106ebd122cb4e4db376ca"> 17</a></span>  <span class="keywordtype">signed</span> <span class="keywordtype">long</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#aa6e969a05af106ebd122cb4e4db376ca">slong</a>; <span class="comment">/* ffi_type_slong */</span></div><div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a654922e817ca13a9440a4f3369a0acfa"> 18</a></span>  <span class="keywordtype">float</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#a654922e817ca13a9440a4f3369a0acfa">ffloat</a>; <span class="comment">/* ffi_type_float */</span></div><div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a1c0b7af9b3aea0e1a731ccf48d67d638"> 19</a></span>  <span class="keywordtype">double</span> <a class="code" href="../../d2/d09/unionfiddle__generic.html#a1c0b7af9b3aea0e1a731ccf48d67d638">ddouble</a>; <span class="comment">/* ffi_type_double */</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#if HAVE_LONG_LONG</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  <span class="keywordtype">unsigned</span> LONG_LONG ulong_long; <span class="comment">/* ffi_type_ulong_long */</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  <span class="keywordtype">signed</span> LONG_LONG slong_long; <span class="comment">/* ffi_type_ulong_long */</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="../../d2/d09/unionfiddle__generic.html#a14b741e1a5d68da29b53733ca86a8809"> 24</a></span>  <span class="keywordtype">void</span> * <a class="code" href="../../d2/d09/unionfiddle__generic.html#a14b741e1a5d68da29b53733ca86a8809">pointer</a>; <span class="comment">/* ffi_type_pointer */</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> } <a class="code" href="../../d2/d09/unionfiddle__generic.html">fiddle_generic</a>;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> ffi_type * <a class="code" href="../../da/dd6/conversions_8h.html#a8fc0ad893d3b3acdfdcef8accfc0ba84">int_to_ffi_type</a>(<span class="keywordtype">int</span> <a class="code" href="../../d5/d9d/tcltklib_8c.html#ac765329451135abec74c45e1897abf26">type</a>);</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keywordtype">void</span> <a class="code" href="../../da/dd6/conversions_8h.html#aa2a3caebc3e5560e771b0341f4864bc7">value_to_generic</a>(<span class="keywordtype">int</span> <a class="code" href="../../d5/d9d/tcltklib_8c.html#ac765329451135abec74c45e1897abf26">type</a>, <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> src, <a class="code" href="../../d2/d09/unionfiddle__generic.html">fiddle_generic</a> * dst);</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> <a class="code" href="../../da/dd6/conversions_8h.html#add3b85536a001dee6cfdd710fbc6080c">generic_to_value</a>(<a class="code" href="../../de/de6/ruby_2ruby_8h.html#a3c1d4bfc6a81af60bdcb48744c35f760">VALUE</a> rettype, <a class="code" href="../../d2/d09/unionfiddle__generic.html">fiddle_generic</a> retval);</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="../../da/dd6/conversions_8h.html#a333a4457b15bf78574e840186db9637d"> 31</a></span> <span class="preprocessor">#define VALUE2GENERIC(_type, _src, _dst) value_to_generic((_type), (_src), (_dst))</span></div><div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="../../da/dd6/conversions_8h.html#a2af380aed890170701796838a1422718"> 32</a></span> <span class="preprocessor">#define INT2FFI_TYPE(_type) int_to_ffi_type(_type)</span></div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="../../da/dd6/conversions_8h.html#a37156aa10667eb1bb35555765f35cb98"> 33</a></span> <span class="preprocessor">#define GENERIC2VALUE(_type, _retval) generic_to_value((_type), (_retval))</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#if SIZEOF_VOIDP == SIZEOF_LONG</span></div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="../../da/dd6/conversions_8h.html#a60974635e5706a1686a0443d28f7451f"> 36</a></span> <span class="preprocessor"># define PTR2NUM(x) (ULONG2NUM((unsigned long)(x)))</span></div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="../../da/dd6/conversions_8h.html#a1bfda858388d9fde65ce0debd0b6879c"> 37</a></span> <span class="preprocessor"># define NUM2PTR(x) ((void*)(NUM2ULONG(x)))</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">/* # error --->> Ruby/DL2 requires sizeof(void*) == sizeof(long) to be compiled. <<--- */</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"># define PTR2NUM(x) (ULL2NUM((unsigned long long)(x)))</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"># define NUM2PTR(x) ((void*)(NUM2ULL(x)))</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#endif</span></div><div class="ttc" id="unionfiddle__generic_html_a654922e817ca13a9440a4f3369a0acfa"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a654922e817ca13a9440a4f3369a0acfa">fiddle_generic::ffloat</a></div><div class="ttdeci">float ffloat</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00018">conversions.h:18</a></div></div>
<div class="ttc" id="fiddle_8h_html"><div class="ttname"><a href="../../d9/d2a/fiddle_8h.html">fiddle.h</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a485a72794d70fa8fbf3189f60a719b73"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a485a72794d70fa8fbf3189f60a719b73">fiddle_generic::schar</a></div><div class="ttdeci">signed char schar</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00011">conversions.h:11</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_ae3411099f0a94d7583a9092d16107b32"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#ae3411099f0a94d7583a9092d16107b32">fiddle_generic::ulong</a></div><div class="ttdeci">unsigned long ulong</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00016">conversions.h:16</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a1c0b7af9b3aea0e1a731ccf48d67d638"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a1c0b7af9b3aea0e1a731ccf48d67d638">fiddle_generic::ddouble</a></div><div class="ttdeci">double ddouble</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00019">conversions.h:19</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_af12f8a3f854fee42dd129eb3f45515da"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#af12f8a3f854fee42dd129eb3f45515da">fiddle_generic::sshort</a></div><div class="ttdeci">signed short sshort</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00013">conversions.h:13</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a2c360e3743cd5f164f78bb9cd2c2b6d2"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a2c360e3743cd5f164f78bb9cd2c2b6d2">fiddle_generic::ushort</a></div><div class="ttdeci">unsigned short ushort</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00012">conversions.h:12</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_aa6e969a05af106ebd122cb4e4db376ca"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#aa6e969a05af106ebd122cb4e4db376ca">fiddle_generic::slong</a></div><div class="ttdeci">signed long slong</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00017">conversions.h:17</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a17ada95f57586c7901f06205116c5e83"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a17ada95f57586c7901f06205116c5e83">fiddle_generic::uint</a></div><div class="ttdeci">unsigned int uint</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00014">conversions.h:14</a></div></div>
<div class="ttc" id="conversions_8h_html_a8fc0ad893d3b3acdfdcef8accfc0ba84"><div class="ttname"><a href="../../da/dd6/conversions_8h.html#a8fc0ad893d3b3acdfdcef8accfc0ba84">int_to_ffi_type</a></div><div class="ttdeci">ffi_type * int_to_ffi_type(int type)</div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d1e/conversions_8c_source.html#l00004">conversions.c:4</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a4eb6086f612ef5d26e8101d75846f8c8"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a4eb6086f612ef5d26e8101d75846f8c8">fiddle_generic::uchar</a></div><div class="ttdeci">unsigned char uchar</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00010">conversions.h:10</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a873f5fc3eb69eacc70abdce0662c4dcf"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a873f5fc3eb69eacc70abdce0662c4dcf">fiddle_generic::fffi_arg</a></div><div class="ttdeci">ffi_arg fffi_arg</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00008">conversions.h:8</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a14b741e1a5d68da29b53733ca86a8809"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a14b741e1a5d68da29b53733ca86a8809">fiddle_generic::pointer</a></div><div class="ttdeci">void * pointer</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00024">conversions.h:24</a></div></div>
<div class="ttc" id="conversions_8h_html_aa2a3caebc3e5560e771b0341f4864bc7"><div class="ttname"><a href="../../da/dd6/conversions_8h.html#aa2a3caebc3e5560e771b0341f4864bc7">value_to_generic</a></div><div class="ttdeci">void value_to_generic(int type, VALUE src, fiddle_generic *dst)</div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d1e/conversions_8c_source.html#l00043">conversions.c:43</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#l00107">tcltklib.c:107</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="unionfiddle__generic_html"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html">fiddle_generic</a></div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00006">conversions.h:6</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_a1d9425c1d677f734c6adbdb5209896f3"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#a1d9425c1d677f734c6adbdb5209896f3">fiddle_generic::fffi_sarg</a></div><div class="ttdeci">ffi_sarg fffi_sarg</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00009">conversions.h:9</a></div></div>
<div class="ttc" id="conversions_8h_html_add3b85536a001dee6cfdd710fbc6080c"><div class="ttname"><a href="../../da/dd6/conversions_8h.html#add3b85536a001dee6cfdd710fbc6080c">generic_to_value</a></div><div class="ttdeci">VALUE generic_to_value(VALUE rettype, fiddle_generic retval)</div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d1e/conversions_8c_source.html#l00095">conversions.c:95</a></div></div>
<div class="ttc" id="unionfiddle__generic_html_af8eed75a7b8b0421ca9fba40cc85f38f"><div class="ttname"><a href="../../d2/d09/unionfiddle__generic.html#af8eed75a7b8b0421ca9fba40cc85f38f">fiddle_generic::sint</a></div><div class="ttdeci">signed int sint</div><div class="ttdef"><b>Definition:</b> <a href="../../da/dd6/conversions_8h_source.html#l00015">conversions.h:15</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>