equivariant functions
KennyTM~
kennytm at gmail.com
Wed Oct 15 12:29:24 PDT 2008
Andrei Alexandrescu wrote:
> Bill Baxter wrote:
>> Hmmm, looking at this:
>>
>> class Owner
>> {
>> const?(A) a() const?{...}
>> const?(B) b() const?{...}
>> const?(C) c() const?{...}
>> const?(D) d() const?{...}
>> const?(E) e() const?{...}
>> const?(F) f() const?{...}
>> const?(G) g() const?{...}
>> const?(H) h() const?{...}
>> const?(I) i() const?{...}
>> const?(J) j() const?{...}
>> }
>>
>> makes me think if we go with that syntax, Andrei is sooner or later
>> going to complain about his D code asking him too many questions. :-)
>> Eh, I guess he can edit the emacs mode to display const? as
>> smiley-faces or something. :-) :-)
>
> At this point Walter will intervene with:
>
> class Owner
> {
> const?
> {
> A a() {...}
> B b() {...}
> C c() {...}
> D d() {...}
> E e() {...}
> F f() {...}
> G g() {...}
> H h() {...}
> I i() {...}
> J j() {...}
> }
> }
>
> which isn't half bad.
>
>
> Andrei
Huh? But
class Owner {
const // without the “?”
{
A a() {...}
B b() {...}
C c() {...}
D d() {...}
E e() {...}
F f() {...}
G g() {...}
H h() {...}
I i() {...}
J j() {...}
}
}
only apply const on the function, but not their return type (i.e. they
become
A a() const { ... }
// etc.
but not
const(A) a() const { ... }
// etc.
)
More information about the Digitalmars-d
mailing list