[fpc-pascal] Check In Interface Type Helpers
    Anthony Walter 
    sysrpl at gmail.com
       
    Wed Aug 23 16:07:39 CEST 2017
    
    
  
Here is another example:
type
  TDay = (Monday = 0, Tuesday, Wednesday, Thursday, Friday, Saturday,
Sunday);
  TDayHelper = record helper for TDay
    function AsByte: Byte;
    function ToString: string;
  end;
function TDayHelper.AsByte: Byte;
begin
  Result := Ord(Self);
end;
function TDayHelper.ToString: string;
begin
  case Self of
    Monday: Result := 'Monday';
    Tuesday: Result := 'Tuesday';
    Wednesday: Result := 'Wednesday';
    Thursday: Result := 'Thursday';
    Friday: Result := 'Friday';
    Saturday: Result := 'Saturday';
    Sunday: Result := 'Sunday';
  end;
end;
And you can have code like this:
var
  Day: TDay;
  S: string;
begin
  Day := TDay.Monday;
  S := Day.ToString.ToLower;
  WriteLn(S);
end;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20170823/c0888f73/attachment.html>
    
    
More information about the fpc-pascal
mailing list