doc/rdoc/more/classes/Proc.html in facets-2.4.2 vs doc/rdoc/more/classes/Proc.html in facets-2.4.3

- old
+ new

@@ -55,10 +55,11 @@ <td align="right"> <table cellspacing="0" cellpadding="2"> <tr valign="top"> <td>In:</td> <td> +<a href="../files/lib/more/facets/partial_rb.html">lib/more/facets/partial.rb</a> <a href="../files/lib/more/facets/openobject_rb.html">lib/more/facets/openobject.rb</a> </td> </tr> <tr> <td>Parent:</td> @@ -78,25 +79,68 @@ <div class="sectiontitle">Methods</div> <ul> - <li><a href="#M000304">to_openobject</a></li> + <li><a href="#M000379">partial</a></li> + <li><a href="#M000380">to_openobject</a></li> </ul> <div class="sectiontitle">Public Instance methods</div> <div class="method"> <div class="title"> - <a name="M000304"></a><b>to_openobject</b>() + <a name="M000379"></a><b>partial</b>(*args) </div> <div class="description"> <p> +Convert a <a href="Proc.html">Proc</a> object into new <a +href="Proc.html#M000379">partial</a> <a href="Proc.html">Proc</a> object. +</p> +<pre> + a = proc { |a,b,c| a+b+c } + b = a.partial(__, 2, __) + b[1,3] #=&gt; 6 +</pre> +<p> +This method is similar to Proc#curry. +</p> +<p> +CREDT Trans +</p> +<p> +TODO: Parhaps ArgumentError would suffice, and we don&#8216;t need <a +href="MissingArgument.html">MissingArgument</a>? +</p> + </div> +<div class="sourcecode"> + <p class="source-link">[ <a href="javascript:toggleSource('M000379_source')" id="l_M000379_source">show source</a> ]</p> + <div id="M000379_source" class="dyn-source"> +<pre> +<span class="ruby-comment cmt"># File lib/more/facets/partial.rb, line 27</span> + <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">partial</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>) + <span class="ruby-constant">Proc</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-operator">*</span><span class="ruby-identifier">spice</span><span class="ruby-operator">|</span> + <span class="ruby-identifier">result</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">collect</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> + <span class="ruby-constant">MissingArgument</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">a</span> <span class="ruby-value">? </span><span class="ruby-identifier">spice</span>.<span class="ruby-identifier">pop</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">a</span> + <span class="ruby-keyword kw">end</span> + <span class="ruby-identifier">call</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">result</span>) + <span class="ruby-keyword kw">end</span> + <span class="ruby-keyword kw">end</span> +</pre> + </div> +</div> +</div> +<div class="method"> + <div class="title"> + <a name="M000380"></a><b>to_openobject</b>() + </div> + <div class="description"> + <p> Translates a <a href="Proc.html">Proc</a> into an <a href="OpenObject.html">OpenObject</a>. By droping an <a href="OpenObject.html">OpenObject</a> into the <a href="Proc.html">Proc</a>, the resulting assignments incured as the procedure is evaluated produce the <a @@ -114,11 +158,11 @@ NOTE The <a href="Proc.html">Proc</a> must have an arity of one &#8212;no more and no less. </p> </div> <div class="sourcecode"> - <p class="source-link">[ <a href="javascript:toggleSource('M000304_source')" id="l_M000304_source">show source</a> ]</p> - <div id="M000304_source" class="dyn-source"> + <p class="source-link">[ <a href="javascript:toggleSource('M000380_source')" id="l_M000380_source">show source</a> ]</p> + <div id="M000380_source" class="dyn-source"> <pre> <span class="ruby-comment cmt"># File lib/more/facets/openobject.rb, line 255</span> <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_openobject</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">'bad arity for converting Proc to openobject'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arity</span> <span class="ruby-operator">!=</span> <span class="ruby-value">1</span> <span class="ruby-identifier">o</span> = <span class="ruby-constant">OpenObject</span>.<span class="ruby-identifier">new</span> \ No newline at end of file