private module declarations

Lars Ivar Igesund larsivar at igesund.net
Mon Aug 7 07:04:50 PDT 2006


Chris Nicholson-Sauls wrote:

> Dave wrote:
>> kris wrote:
>> 
>>> Sean Kelly wrote:
>>>
>>>> Tom wrote:
>>>>
>>>>> I know this is not the first time this comes into the light but... I
>>>>> insist.
>>>>>
>>>>> Actually (luckily), one can do the following:
>>>>>
>>>>> bar.d
>>>>> | class Bar {...whatever...} // Aux object
>>>>>
>>>>> foo.d
>>>>> | private import bar; // Private could be omitted
>>>>> |
>>>>> | class Foo {...whatever...}
>>>>>
>>>>> main.d
>>>>> | import foo;
>>>>> |
>>>>> | void main()
>>>>> | {
>>>>> |   Foo f = new Foo;
>>>>> |   Bar b = new Bar; // Error, private imported in foo.d
>>>>> |   ...
>>>>>
>>>>> What are the difficulties of implementing in the language the
>>>>> following?
>>>>>
>>>>> foo.d
>>>>> | private class Bar {...whatever...} // Aux object
>>>>> | class Foo {...whatever...}
>>>>>
>>>>> main.d
>>>>> | import foo;
>>>>> |
>>>>> | void main()
>>>>> | {
>>>>> |   Foo f = new Foo;
>>>>> |   Bar b = new Bar; // Error, private member of foo.d
>>>>> |   ...
>>>>>
>>>>> I would love to see this someday.
>>>>
>>>> I thought it already worked this way, as I use the technique quite a
>>>> bit :-p  Ah well, I vote for it too then.
>>>>
>>>> Sean
>>>
>>> Count me too;
>> 
>> Ditto.
> 
> Tritto.  (Is that even a word?)

Quatro?

-- 
Lars Ivar Igesund
blog at http://larsivi.net
DSource & #D: larsivi



More information about the Digitalmars-d mailing list