[fpc-pascal] Enum scope
Marcos Douglas
md at delfire.net
Fri Feb 28 19:59:50 CET 2014
On Fri, Feb 28, 2014 at 3:47 PM, Mattias Gaertner
<nc-gaertnma at netcologne.de> wrote:
>
> On Fri, 28 Feb 2014 15:29:03 -0300
> Marcos Douglas <md at delfire.net> wrote:
>
> >[...]
> > These properties are defined in Process unit. My class is in myprocess unit
> > (or something like that).
> > The problem is: I can not use the enums values because they don't exists in
> > my unit (myprocess) but if these enums were defined inside TProcess class
> > (public type), I can use them without problem.
> >
> > So, what do you think about it?
>
> Enums are always public and global.
> For example:
>
> TMyClass = class
> private
> type
> MyEnums = (enum1, enum2);
> public
> e: MyEnums;
> end;
>
> enum1 can be used in other units.
But that's what I'm talking about! :)
So if the TProcessOptions, TProcessPriority and TStartupOptions was
declared as a type inside TProcess I do not needed to import (uses)
two units (follow the example: process and myprocess) in a third unit.
I propose "migrate" these enums from units to be member of classes.
Regards,
Marcos Douglas
More information about the fpc-pascal
mailing list