<html><head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Field" rel="Chapter" href="Field.html"><title>Field</title> </head> <body> <code class="code"><span class="keyword">sig</span><br> <span class="keyword">module</span> <span class="constructor">For_generated_code</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> (<span class="keywordsign">'</span>perm, <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) t = {<br> force_variance : <span class="keywordsign">'</span>perm <span class="keywordsign">-></span> unit;<br> name : string;<br> setter : (<span class="keywordsign">'</span>record <span class="keywordsign">-></span> <span class="keywordsign">'</span>field <span class="keywordsign">-></span> unit) option;<br> getter : <span class="keywordsign">'</span>record <span class="keywordsign">-></span> <span class="keywordsign">'</span>field;<br> fset : <span class="keywordsign">'</span>record <span class="keywordsign">-></span> <span class="keywordsign">'</span>field <span class="keywordsign">-></span> <span class="keywordsign">'</span>record;<br> }<br> <span class="keyword">end</span><br> <span class="keyword">type</span> (<span class="keywordsign">'</span>perm, <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) t_with_perm =<br> <span class="constructor">Field</span> <span class="keyword">of</span> (<span class="keywordsign">'</span>perm, <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) <span class="constructor">Field</span>.<span class="constructor">For_generated_code</span>.t<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) t =<br> ([ <span class="keywordsign">`</span><span class="constructor">Read</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Set_and_create</span> ], <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) <span class="constructor">Field</span>.t_with_perm<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) readonly_t =<br> ([ <span class="keywordsign">`</span><span class="constructor">Read</span> ], <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) <span class="constructor">Field</span>.t_with_perm<br> <span class="keyword">val</span> name : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) <span class="constructor">Field</span>.t_with_perm <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> get : (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>r, <span class="keywordsign">'</span>a) <span class="constructor">Field</span>.t_with_perm <span class="keywordsign">-></span> <span class="keywordsign">'</span>r <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> fset :<br> ([> <span class="keywordsign">`</span><span class="constructor">Set_and_create</span> ], <span class="keywordsign">'</span>r, <span class="keywordsign">'</span>a) <span class="constructor">Field</span>.t_with_perm <span class="keywordsign">-></span> <span class="keywordsign">'</span>r <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>r<br> <span class="keyword">val</span> setter :<br> ([> <span class="keywordsign">`</span><span class="constructor">Set_and_create</span> ], <span class="keywordsign">'</span>r, <span class="keywordsign">'</span>a) <span class="constructor">Field</span>.t_with_perm <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>r <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> unit) option<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>perm, <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>result) user = {<br> f : <span class="keywordsign">'</span>field. (<span class="keywordsign">'</span>perm, <span class="keywordsign">'</span>record, <span class="keywordsign">'</span>field) <span class="constructor">Field</span>.t_with_perm <span class="keywordsign">-></span> <span class="keywordsign">'</span>result;<br> }<br> <span class="keyword">end</span></code></body></html>