<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">On Wed, Oct 27, 2021 at 10:06 PM Bart via lazarus <<a href="mailto:lazarus@lists.lazarus-ide.org">lazarus@lists.lazarus-ide.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">You totally lost me here.<br>
IMHO there is no need for CreateExtende or similar new constructor.<br></blockquote><div><br></div><div>Why not?</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
THis is what we currently have.<br>
<br>
TMask:<br>
constructor Create(const aMask: String; aCaseSensitive: Boolean;<br>
aOpcodesAllowed: TMaskOpCodes); virtual; overload;<br>
</blockquote><div><br></div><div>I understood you will change constructor Create() to support the backwards compatible syntax.</div><div>Now there is CreateLegacy() to make it easy and intuitive to use.</div><div>The same way a new CreateExtended() would make the new syntax easier to use.</div><div>Such a constructor is handy and intuitive especially when code completion is used. A user sees alternative constructor names right away.</div><div>A sign of an intuitive well designed API is that you can select methods and properties etc. with code completion by their names without referring much to documentation. At least you then get an idea of what to search from the documentation.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">These __are__ the extended constructors for aal the fancy new/extended stuff.<br>
They are called by all the other constructors that only have the old<br>
parameters.<br>
<br>
So we have backwardscompatibility and extended capability just with<br>
all constructors named simply Create.<br></blockquote><div><br></div><div>The idea was only to offer an intuitive API which gives a hint there is something extended available, just like CreateLegacy() gave a hint there is the good old legacy syntax available.</div><div><br></div><div>Juha</div><div><br></div></div></div></div></div></div></div></div>