protected + package attributes

ag0aep6g via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Mon Jul 11 05:42:57 PDT 2016


On 07/11/2016 02:28 PM, zodd wrote:
> Suppose I have a class with a few protected functions. I want to let
> another class from the same package call these functions. Thus I've
> added a "package" attribute and got the following:
> Error: conflicting protection attribute 'package' and 'protected'
>
> How can I achieve what I want? These member functions must be protected,
> I can't make them private because this is a base class intended for
> inheritance.

Can have only one level of protection. If package is too restrictive 
with regards to overriding, and protected is too restrictive with 
regards to calling, then there's only public left.

Other than that, you could add a `package` method with a different name 
that just calls the `protected` one.


More information about the Digitalmars-d-learn mailing list