www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - proposition classname.this

reply Zarathustra <adam.chrapkowski gmail.com> writes:
Proposition: className.this for nested classes

for ex:
class Foo{
  void fnc1(){}

  class Bar{
    void fnc1
    void fnc2(){ Foo.this.fnc1; }
  }
}

instead of:
class Foo{
  Foo Foo_this(){ return this; }
  void fnc1(){}

  class Bar{
    void fnc1
    void fnc2(){ Foo_this.fnc1; }
  }
}
Nov 27 2008
next sibling parent BCS <ao pathlink.com> writes:
Reply to Zarathustra,

 Proposition: className.this for nested classes
 
 for ex:
 class Foo{
 void fnc1(){}
 class Bar{
 void fnc1
 void fnc2(){ Foo.this.fnc1; }
 }
 }
 instead of:
 class Foo{
 Foo Foo_this(){ return this; }
 void fnc1(){}
 class Bar{
 void fnc1
 void fnc2(){ Foo_this.fnc1; }
 }
 }

I think that "outer" has been proposed for that as well.
Nov 27 2008
prev sibling parent "Jarrett Billingsley" <jarrett.billingsley gmail.com> writes:
On Thu, Nov 27, 2008 at 12:39 PM, Zarathustra
<adam.chrapkowski gmail.com> wrote:
 Proposition: className.this for nested classes

 for ex:
 class Foo{
  void fnc1(){}

  class Bar{
    void fnc1
    void fnc2(){ Foo.this.fnc1; }
  }
 }

 instead of:
 class Foo{
  Foo Foo_this(){ return this; }
  void fnc1(){}

  class Bar{
    void fnc1
    void fnc2(){ Foo_this.fnc1; }
  }
 }

You can already access that through this.outer.
Nov 27 2008