record: C# like records for D

Dylan Graham dylan.graham2000 at gmail.com
Fri Jul 16 13:14:22 UTC 2021


On Wednesday, 14 July 2021 at 23:16:05 UTC, Dylan Graham wrote:
> [DUB](https://code.dlang.org/packages/record)
> [Github](https://github.com/hmmdyl/record)

Found and squashed some critical bugs. Thanks to Adam and Rikki 
for the help.

Before, record would throw a compilation error due when passed 
types declared outside of drecord or its imports. Example:
```D
module myapp;

class A{}
auto MyRecord = record!(get!(A, "a")); // would throw an error as 
it could not find A
```

This was due to improper usage of `.stringof` and mixins. This 
has been corrected and replaced with idiomatic D. The string 
generation functions for the constructor and opEquals have been 
removed and replaced in accordance to above.


More information about the Digitalmars-d-announce mailing list