Question

How do I create a strongly types alias in D? Something like:

alias euro = uint;
alias dollar = uint;

euro toEur(dollar pd) { ... }
dollar toDollar(euro pe) { ... }
Was it helpful?

Solution

A strongly typed alias is actually a new type, so just use a plain struct:

struct euro {
     uint amount;
}

If you want it to implicitly convert to and from uint, you can also add alias amount this;, but that weakens the typing so you might not want to.

OTHER TIPS

What you need is Typedef, which basically does what Adam suggests.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top