<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
                                        
                                        
                                            
                                        
                                        
                                        Hi Chris,<div><br></div><div>for #suggestedTypeNames, it does not yield 'someMorph' and 'someMorphThing'. I suppose that method only exists for getting rid of prefix 'a' or 'some' or 'another' and suffix 's'.</div><div><br></div><div>Hmmm... #featuresDo: does not enumerate all combinations. It is a splitting algorithm on a flat stream of characters. It has no notion of the tree structure in source code; "features" means words in a piece of natural-language like text. If one wanted to enumerate all combinations (ignoring whitespace), it is possible as follows:</div><div><br></div><div><div><b>| input starts ends |</b></div><div><b>input := 'someMorphThing'.</b></div><div><b>starts := OrderedCollection new.</b></div><div><b>ends := OrderedCollection new.</b></div><div><b>combinations := OrderedCollection new.</b></div><div><b><br></b></div><div><b>input findFeatureIndicesDo: [:start :end |</b></div><div><b><span class="Apple-tab-span" style="white-space:pre">   </span>starts add: start.</b></div><div><b><span class="Apple-tab-span" style="white-space:pre">        </span>ends add: end].</b></div><div><b><br></b></div><div><b>starts do: [:start | ends do: [:end |</b></div><div><b><span class="Apple-tab-span" style="white-space:pre">        </span>start < end ifTrue: [</b></div><div><b><span class="Apple-tab-span" style="white-space:pre">          </span>combinations add: (input copyFrom: start to: end) ]]].</b></div><div><b><br></b></div><div><b>combinations explore.</b></div></div><div><br></div><div>I hope this answers your question. :-)</div><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;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 12.07.2019 04:58:37 schrieb Chris Muller <asqueaker@gmail.com>:</p><div style="font-family:Arial,Helvetica,sans-serif">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><div dir="ltr"><div dir="ltr">Hi Marcel,</div><div dir="ltr"><br></div><div dir="ltr">On Thu, Jul 11, 2019 at 2:21 AM <<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex;border-left: 1px solid rgb(204,204,204);padding-left: 1ex;min-width: 500px">Marcel Taeumel uploaded a new version of System to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/System-mt.1069.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/trunk/System-mt.1069.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: System-mt.1069<br>
Author: mt<br>
Time: 11 July 2019, 9:21:36.166354 am<br>
UUID: 27227430-c08f-3c47-b9fd-b646e7f948b6<br>
Ancestors: System-mt.1068<br>
<br>
Fixes minor regression in suggestedTypeNames. That is. 'someMorphThing' should also yield 'MorphThing', not just 'Morph' and 'Thing'.<br></blockquote><div><br></div><div>Will it also yield 'someMorph' and 'someMorphThing'?  At first I thought the features only included the leaves, but this gives me hope that featuresDo: will enumerate all the nodes for me.</div><div><br></div><div>Thanks for doing this enhancement BTW, it bodes well for boosting the human<-->software bandwidth of Squeak's IDE even higher for users.</div><div><br></div><div>Best,</div><div>  Chris</div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex;border-left: 1px solid rgb(204,204,204);padding-left: 1ex;min-width: 500px">
<br>
=============== Diff against System-mt.1068 ===============<br>
<br>
Item was changed:<br>
  ----- Method: String>>suggestedTypeNames (in category '*system') -----<br>
  suggestedTypeNames<br>
<br>
        ^ Array streamContents: [:stream |<br>
                self findFeatureIndicesDo: [:start :end |<br>
                        (self at: start) isUppercase ifTrue: [<br>
                                stream nextPut: (self copyFrom: start to: end).<br>
+                               end ~= self size ifTrue: [<br>
+                                       stream nextPut: (self copyFrom: start to: self size) withBlanksTrimmed].<br>
                                "Often, argument names that refer to Collections end in the letter s, which can cause the suggested type-name to not be found. Account for this."<br>
                                (self at: end) = $s ifTrue: [<br>
                                        stream nextPut: (self copyFrom: start to: end -1)]]]].!<br>
<br>
<br>
</blockquote></div></div>
</div></blockquote></div>