Can we drop static struct initializers?
BCS
none at anon.com
Mon Nov 23 15:06:36 PST 2009
Hello Walter,
> Bill Baxter wrote:
>
>> On Fri, Nov 20, 2009 at 4:05 PM, Walter Bright
>> <newshound1 at digitalmars.com> wrote:
>>> Bill Baxter wrote:
>>>
>>>> Right, but if you do define it (in order to do something extra upon
>>>> initialization -- validate inputs or what have you) then it no
>>>> longer works at compile time.
>>>>
>>> Right, but the static initialization then shouldn't work, either.
>>>
>> Why not? It works if you use static opCall(int,int) instead of
>> this(int,int).
>>
> Because if you need runtime execution to initialize, a back door to
> statically initialize it looks like a bug.
>
who said anything about needing runtime? If the constructor can be evaluated
as CTFE with it's only result being the struct getting set up, why not let
it. I can think of serval useful thing to do with that (validation, denormalization,
etc.)
More information about the Digitalmars-d
mailing list