On Friday, 24 March 2023 at 09:59:47 UTC, Alexander Zhirov wrote:
On Friday, 24 March 2023 at 09:46:26 UTC, Jacob Shtokolov wrote:
BTW, you can also `alias this` your struct value and then use
`std.conv : to` for casting, if you don't need specific
casting rules.
I don't quite understand what you mean? Could you show me an
example?
I mean, it would be the same code except that you don't define
any `opCast` or other operators for a struct, just alias the
value to `this` and use `std.conv : to` directly as follows:
```d
struct MyVal
{
string value;
alias value this;
}
void main()
{
import std.stdio;
import std.conv;
auto a = MyVal("100");
auto b = MyVal("11.2");
auto MyInt = a.to!int;
auto myFloat = b.to!float;
writeln(MyInt, ", ", myFloat);
}
```