Re: betterC CTFE nested switch

2020-02-21 Thread Stefan Koch via Digitalmars-d-learn

On Friday, 21 February 2020 at 09:03:26 UTC, Abby wrote:

On Monday, 17 February 2020 at 19:02:50 UTC, Stefan Koch wrote:

Sorry I just realized I never published the code.
I am going to add it to ctfeutils.


Hi Stefan,
I'm sorry to bother you, I just wanted to kindly ask if you 
would upload the formatter to ctfeutils on github it would help 
me alot.


Thank you very much
Kind regards Abby


No problem I am a little busy lately.

In the meantime you can check if std.format : format would do the 
job.
Even though it will like be much slower than my CTFE optimized 
version.


Re: betterC CTFE nested switch

2020-02-21 Thread Abby via Digitalmars-d-learn

On Monday, 17 February 2020 at 19:02:50 UTC, Stefan Koch wrote:

Sorry I just realized I never published the code.
I am going to add it to ctfeutils.


Hi Stefan,
I'm sorry to bother you, I just wanted to kindly ask if you would 
upload the formatter to ctfeutils on github it would help me alot.


Thank you very much
Kind regards Abby


Re: betterC CTFE nested switch

2020-02-18 Thread Abby via Digitalmars-d-learn

On Monday, 17 February 2020 at 19:02:50 UTC, Stefan Koch wrote:


Sorry I just realized I never published the code.
I am going to add it to ctfeutils.


Thank you very much


Re: betterC CTFE nested switch

2020-02-17 Thread Stefan Koch via Digitalmars-d-learn

On Monday, 17 February 2020 at 11:51:03 UTC, Abby wrote:

On Monday, 17 February 2020 at 11:05:46 UTC, Stefan Koch wrote:

On Monday, 17 February 2020 at 10:18:32 UTC, Abby wrote:

[...]


I have a ctfe compatible string formatter, you should be to 
find it here

https://forum.dlang.org/post/hmyxvknbdqtlnxvqq...@forum.dlang.org

I hope that helps,

Regards, Stefan
:


Hi Stefan, thank you very much for your reply but I could not 
find the source code or package name anywhere in that forum 
thread, I was only able to find this 
https://github.com/UplinkCoder/ctfeutils on github, but it's 
empty for me. Can you please help and point me to somewhere so 
I can try it out?


Thank you very much

Kind regards Abby


Sorry I just realized I never published the code.
I am going to add it to ctfeutils.


Re: betterC CTFE nested switch

2020-02-17 Thread Abby via Digitalmars-d-learn

On Monday, 17 February 2020 at 11:05:46 UTC, Stefan Koch wrote:

On Monday, 17 February 2020 at 10:18:32 UTC, Abby wrote:

Hi there guys,
I was trying to generated code during compile time. Bassicly 
I'm creating a tokenizer and I would like to generated nested 
switch using betterC.


[...]


I have a ctfe compatible string formatter, you should be to 
find it here

https://forum.dlang.org/post/hmyxvknbdqtlnxvqq...@forum.dlang.org

I hope that helps,

Regards, Stefan
:


Hi Stefan, thank you very much for your reply but I could not 
find the source code or package name anywhere in that forum 
thread, I was only able to find this 
https://github.com/UplinkCoder/ctfeutils on github, but it's 
empty for me. Can you please help and point me to somewhere so I 
can try it out?


Thank you very much

Kind regards Abby


Re: betterC CTFE nested switch

2020-02-17 Thread Stefan Koch via Digitalmars-d-learn

On Monday, 17 February 2020 at 10:18:32 UTC, Abby wrote:

Hi there guys,
I was trying to generated code during compile time. Bassicly 
I'm creating a tokenizer and I would like to generated nested 
switch using betterC.


[...]


I have a ctfe compatible string formatter, you should be to find 
it here

https://forum.dlang.org/post/hmyxvknbdqtlnxvqq...@forum.dlang.org

I hope that helps,

Regards, Stefan
:


betterC CTFE nested switch

2020-02-17 Thread Abby via Digitalmars-d-learn

Hi there guys,
I was trying to generated code during compile time. Bassicly I'm 
creating a tokenizer and I would like to generated nested switch 
using betterC.


Basically convert something like this:

enum tokens =
[
['!', '='],
['>', '='],
['>'],
];

to:

switch(str[i])
{
case '!':
switch(str[i + 1])
{
case '=':
onToken(['!', '=']);
break;
default: break;
}
break;
case '>':
switch(str[i + 1])
{
case '=':
onToken(['>', '=']);
break;
default:
onToken(['>']);
break;
}
break;
default: break;
}

but right now I'm stuck and I don't know how to achieve this. I 
was able to find out that:


1) Switches has to be labeled and the only way I know how to do 
so is to use string code and then mixing it. I was hoping for 
example to mixing only labels before switch and after continue 
and break but this does not seem to work :/


2) Format does not work in compile time using betterC (sprintf 
also does not work



Thank you very much for any kind if help
Kind regards Abby