Răsfoiți Sursa

fcl-passrc: allow to generate implementations of class methods and class constructors/destructors (new field IsClassMethod in TPasProcedureImpl and related code in TPasWriter.WriteProcImpl)

git-svn-id: trunk@37038 -
maciej-izak 8 ani în urmă
părinte
comite
9c6b78f11e

+ 1 - 0
packages/fcl-passrc/src/pastree.pp

@@ -1084,6 +1084,7 @@ Type
     ProcType: TPasProcedureType;
     Locals: TFPList;
     Body: TPasImplBlock;
+    IsClassMethod: boolean;
   end;
 
   { TPasConstructorImpl - used by mkxmlrpc, not by pparser }

+ 2 - 0
packages/fcl-passrc/src/paswrite.pp

@@ -387,6 +387,8 @@ var
   i: Integer;
 begin
   PrepareDeclSection('');
+  if AProc.IsClassMethod then
+    wrt('class ');
   wrt(AProc.TypeName + ' ');
 
   if AProc.Parent.ClassType = TPasClassType then