On Wednesday, 1 January 2014 at 12:09:40 UTC, Jacob Carlborg wrote:
On 2014-01-01 01:52, Frustrated wrote:
Is there an easy way to implement properties of an interface within a class instead of having to duplicate almost the exact same code with
generic properties?

interface A
{
    @property int data();
    @property int data(int value);

}

class B : A
{
  @property int data() { return m_data; } // read property
@property int data(int value) { return m_data = value; } // write
property
}

You can't use an abstract class?

Yes this is the ideal time to use an abstract base class and is what i would do.

The same thing *could* be achieved using mixin templates, with or without scopes but could lead to unmaintainable code. See the examples on mixin templates here: http://nomad.so/2013/07/templates-in-d-explained/

Reply via email to