<div dir="ltr">Hello,<div><br></div><div>Today I compiled my FPC from trunk and saw the following possibility:</div><div><br></div><div><div>  { TIntegerHelper }</div><div><br></div><div>  TIntegerHelper = record helper for Integer</div><div>    function ToString: string;</div><div>  end;</div><div><br></div><div>...</div><div><br></div><div><div>{ TIntegerHelper }</div><div><br></div><div>function TIntegerHelper.ToString: string;</div><div>begin</div><div>  Result := IntToStr(Self);</div><div>end;</div></div><div><br></div><div>...</div><div><br></div><div><div>var</div><div>  I: Integer = 123;</div><div>begin</div><div>  WriteLn(I.ToString); // Prints 123</div><div>end.</div></div><div><br></div><div>Or:</div><div><br></div><div><div>  { TStringHelper }</div><div><br></div><div>  TStringHelper = record helper for String</div><div>    function ToUpperCase: string;</div><div>  end;</div></div><div><br></div><div>...</div><div><br></div><div><div>uses</div><div>  LazUTF8;</div><div><br></div><div>{ TStringHelper }</div><div><br></div><div>function TStringHelper.ToUpperCase: string;</div><div>begin</div><div>  Result := LazUTF8.UTF8UpperCase(Self);</div><div>end;</div></div><div><br></div><div>...</div><div>var</div><div>  S: UTF8String = 'atenção';</div><div>begin</div><div>  WriteLn(S.ToUpperCase); // Prints ATENÇÃO</div><div>  // or</div><div>  WriteLn('atenção'.ToUpperCase); // Prints ATENÇÃO<br></div><div>end.</div><div><br></div><div>It's evolution, baby! =)</div><div><br></div><div>Thanks alot for this great implementation, FPC team! (and special thanks to Sven!) =D</div><div><br></div>-- <br><div class="gmail_signature">Silvio Clécio<br>My public projects - <a href="http://github.com/silvioprog" target="_blank">github.com/silvioprog</a></div>
</div></div>