<body><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
+1 :-)<div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div><blockquote class="history_container" type="cite" style="border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;">
<p style="color: #AAAAAA; margin-top: 10px;">Am 12.04.2020 09:29:27 schrieb Levente Uzonyi <leves@caesar.elte.hu>:</p><div style="font-family:Arial,Helvetica,sans-serif">Hi Christoph,
<br>
<br>On Sat, 11 Apr 2020, Thiede, Christoph wrote:
<br>
<br>>
<br>> Great idea! Are there any visible performance improvements? In any case, this change makes it more easy to explore and debug the matching process!
<br>
<br>There's ~5% speedup with the simple test case I was benchmarking.
<br>
<br>>
<br>>
<br>> FYI, you left three return carets in this method. :-)
<br>
<br>Right. I wanted to move the return instruction outside but forgot to
<br>remove the inner ones.
<br>
<br>
<br>Levente
<br>
<br>>
<br>>
<br>> Best,
<br>> Christoph
<br>>
<br>> __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
<br>> Von: Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von commits@source.squeak.org <commits@source.squeak.org>
<br>> Gesendet: Samstag, 11. April 2020 22:05:05
<br>> An: squeak-dev@lists.squeakfoundation.org
<br>> Betreff: [squeak-dev] The Inbox: Regex-Core-ul.57.mcz
<br>> Levente Uzonyi uploaded a new version of Regex-Core to project The Inbox:
<br>> http://source.squeak.org/inbox/Regex-Core-ul.57.mcz
<br>>
<br>> ==================== Summary ====================
<br>>
<br>> Name: Regex-Core-ul.57
<br>> Author: ul
<br>> Time: 11 April 2020, 9:42:43.405809 pm
<br>> UUID: 3cda3ad5-49f2-41f1-ab9d-2f6fc242ae9d
<br>> Ancestors: Regex-Core-ct.56
<br>>
<br>> - avoid generating RxmBranch nodes when there's no real branch. e.g. 'abc' asRegex
<br>>
<br>> =============== Diff against Regex-Core-ct.56 ===============
<br>>
<br>> Item was changed:
<br>> ----- Method: RxMatcher>>hookBranchOf:onto: (in category 'private') -----
<br>> hookBranchOf: regexNode onto: endMarker
<br>> "Private - Recurse down the chain of regexes starting at
<br>> regexNode, compiling their branches and hooking their tails
<br>> to the endMarker node."
<br>>
<br>> + ^regexNode regex
<br>> + ifNil: [ "Avoid creating a branch without an alternative."
<br>> + ^(regexNode branch dispatchTo: self)
<br>> + pointTailTo: endMarker;
<br>> + yourself ]
<br>> + ifNotNil: [ :regex |
<br>> + | rest |
<br>> + rest := self hookBranchOf: regex onto: endMarker.
<br>> + ^RxmBranch new
<br>> + next: ((regexNode branch dispatchTo: self)
<br>> - | rest |
<br>> - rest := regexNode regex ifNotNil: [ :regex |
<br>> - self hookBranchOf: regex onto: endMarker ].
<br>> - ^RxmBranch new
<br>> - next: ((regexNode branch dispatchTo: self)
<br>> pointTailTo: endMarker;
<br>> yourself);
<br>> + alternative: rest;
<br>> + yourself ]
<br>> + !
<br>> - alternative: rest;
<br>> - yourself!
<br>>
<br>>
<br>>
<br>><br></commits@source.squeak.org></squeak-dev-bounces@lists.squeakfoundation.org></div></blockquote>
</div></body>