On Friday, 21 January 2022 at 22:25:32 UTC, forkit wrote:


I really like how alias and mixin can simplify my code even further:

//---

int[][int][] CreateDataSet
(const(int) recordsNeeded, const(int) valuesPerRecord)
{
    int[][int][] records;
    records.reserve(recordsNeeded);

    const int iotaStartNum = 100_000_001;
alias iotaValues = Alias!"iota(iotaStartNum, iotaStartNum + recordsNeeded).enumerate"; alias recordValues = Alias!"iota(valuesPerRecord).map!(valuesPerRecord => cast(int)rnd.dice(0.6, 1.4)).array";

    foreach(i, id; mixin(iotaValues))
    {
        records ~= [ id: mixin(recordValues) ];
    }

    return records;
}

//---

Reply via email to