selective import
Dicebot
public at dicebot.lv
Thu Dec 5 05:43:32 PST 2013
On Thursday, 5 December 2013 at 13:39:09 UTC, Alexandr Druzhinin
wrote:
> 05.12.2013 20:34, Dicebot пишет:
>> On Thursday, 5 December 2013 at 11:17:18 UTC, Alexandr
>> Druzhinin wrote:
>>> I don't see difference, but it doesn't mean it doesn't exist.
>>> What do
>>> you think about it?
>>
>> It depends on how bar uses foo. You should do public import of
>> symbols
>> from foo if they are required to interact with bar public API.
>> If foo is
>> only used as part of internal implementation, it should be
>> kept private
>> and both modules imported explicitly.
> Third module uses both Bar and Foo. So I should either import
> every module individually, or import Bar only but Bar should
> publicly import Foo - that's the question.
It does not matter what third module uses, it is purely about
relation between foo and bar. If foo symbols are not necessary
part of public bar API, third module will import both. If they
are, bar will import foo publicly. Pretty simple.
More information about the Digitalmars-d-learn
mailing list