<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Courier New";
mso-fareast-language:EN-GB;}
span.comment
{mso-style-name:comment;}
span.st0
{mso-style-name:st0;}
span.st1
{mso-style-name:st1;}
span.literal
{mso-style-name:literal;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style>
</head>
<body lang="en-CZ" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hi,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">During the Classfile API reviews there have been raised concerns about `CodeBuilder::transforming` method, for details see:<o:p></o:p></span></p>
<p class="MsoNormal"><a href="https://github.com/openjdk/jdk/pull/10982/files/074dd30401a68638a24c157595caeb96b3511614#r1123858513">https://github.com/openjdk/jdk/pull/10982/files/074dd30401a68638a24c157595caeb96b3511614#r1123858513</a></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">I would like to (re-)open this discussion here to find the best suitable form of the following method:<o:p></o:p></span></p>
<pre style="background:white"><span style="color:black"> </span><span class="comment"><span style="color:#969696">/**</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span class="comment"><span style="color:#969696"> * </span></span><span class="st0"><b><span style="color:#969696">Apply</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">a</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">transform</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">to</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">the</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">code</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">built</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">by</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">a</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">handler, directing</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">results</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">to</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">this</span></b></span><span style="color:black"> </span><span class="st0"><b><span style="color:#969696">builder.</span></b></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span class="comment"><span style="color:#969696"> *</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span class="comment"><span style="color:#969696"> * </span></span><span class="st0"><b><span style="color:#969696">@param</span></b></span><span style="color:black"> transform </span><span class="comment"><span style="color:#969696">the</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">transform</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">to</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">apply</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">to</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">the</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">code</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">built</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">by</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">the</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">handler</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span class="comment"><span style="color:#969696"> * </span></span><span class="st0"><b><span style="color:#969696">@param</span></b></span><span style="color:black"> handler </span><span class="comment"><span style="color:#969696">the</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">handler</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">that</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">receives</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">a {</span></span><span class="st0"><b><span style="color:#969696">@linkplain</span></b></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">CodeBuilder} to</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span class="comment"><span style="color:#969696"> * build</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">the</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">code.</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span class="comment"><span style="color:#969696"> * </span></span><span class="st0"><b><span style="color:#969696">@return</span></b></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">this</span></span><span style="color:black"> </span><span class="comment"><span style="color:#969696">builder</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span style="color:black"> </span><span class="comment"><span style="color:#969696">*/</span></span><span style="color:black"><o:p></o:p></span></pre>
<pre style="background:white"><span style="color:black"> </span><span class="literal"><span style="color:#336BDD">default</span></span><span style="color:black"> CodeBuilder <span class="st1"><b>transforming</b></span>(CodeTransform transform, Consumer<CodeBuilder> handler)<o:p></o:p></span></pre>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">My proposal is to align it more with `CodeBuilder::block` method and emphasize more the bytecode block than the transformation itself.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I propose to change the method name and arguments to:<o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">/**</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> *
<b>Add</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">a</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">transformed</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">lexical</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">block</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">to</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">method</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">being</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">built.</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> *
</span><b><span style="font-size:10.0pt;font-family:"Courier New";color:#9999FF;mso-fareast-language:EN-GB"><p></span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> * Within</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">this</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">block, the {<b>@link</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">#startLabel()} and {<b>@link</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">#endLabel()} correspond</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> * to</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">start</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">and</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">end</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">of</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">block, and</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the {<b>@link</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">BlockCodeBuilder#breakLabel()}</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> * also</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">corresponds</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">to</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">end</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">of</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">block.</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> *</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> *
<b>@param</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"> handler
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">handler</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">that</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">receives</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">a {<b>@linkplain</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">BlockCodeBuilder} to</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> * generate</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">body</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">of</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">lexical</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">block.</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> *
<b>@param</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"> transform
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">transform</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">to</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">apply</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">to</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">the</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">lexical</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">block</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">generated</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">by</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">handler</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB"> *
<b>@return</b></span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">this</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">builder</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#969696;mso-fareast-language:EN-GB">*/</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#336BDD;mso-fareast-language:EN-GB">default</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"> CodeBuilder
<b>transformedBlock</b>(<i>Consumer</i><<i>BlockCodeBuilder</i>> handler, <i>CodeTransform</i> transform</span><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Or alternatively:<o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#336BDD;mso-fareast-language:EN-GB">default</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"> CodeBuilder
<b>transformBlock</b>(<i>Consumer</i><<i>BlockCodeBuilder</i>> handler, <i>CodeTransform</i> transform</span><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">or:<o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#336BDD;mso-fareast-language:EN-GB">default</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"> CodeBuilder
<b>transform</b></span><b><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">ing</span></b><b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">Block</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">(<i>Consumer</i><<i>BlockCodeBuilder</i>>
handler, <i>CodeTransform</i> transform)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">or just simple:<o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">
</span><span style="font-size:10.0pt;font-family:"Courier New";color:#336BDD;mso-fareast-language:EN-GB">default</span><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB"> CodeBuilder
</span><b><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">b</span></b><b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">lock</span></b><span style="font-size:10.0pt;font-family:"Courier New";color:black;mso-fareast-language:EN-GB">(<i>Consumer</i><<i>BlockCodeBuilder</i>>
handler, <i>CodeTransform</i> transform)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Please let me know which version do you prefer or propose alternatives.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Thanks,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Adam<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>