digitalmars.D.learn - Convert struct to set of fields and pass it's to constructor
- Suliman (22/22) Feb 01 2017 Class constructor accept only set if fields like
- Minty Fresh (6/28) Feb 01 2017 tupleof is probably what you're looking for.
- Suliman (3/39) Feb 01 2017 Because it's implemented not by me, and I do not want to touch
Class constructor accept only set if fields like this(string login, string pass) Can I create structure, fill it, and than pass to constructor? Like this: ``` import std.stdio; struct ConnectSettings { string login; string pass; }; ConnectSettings cs; void main() { cs.login = "admin"; cs.pass = "mypass"; } ``` and than pass to constructor it's like: `... new SomeClass(cs)` I tried, but get error, that ctor accept only fields list. Can I unroll struct to it?
Feb 01 2017
On Wednesday, 1 February 2017 at 13:37:27 UTC, Suliman wrote:Class constructor accept only set if fields like this(string login, string pass) Can I create structure, fill it, and than pass to constructor? Like this: ``` import std.stdio; struct ConnectSettings { string login; string pass; }; ConnectSettings cs; void main() { cs.login = "admin"; cs.pass = "mypass"; } ``` and than pass to constructor it's like: `... new SomeClass(cs)` I tried, but get error, that ctor accept only fields list. Can I unroll struct to it?tupleof is probably what you're looking for. ie. new SomeClass(cs.tupleof); That said, why not have the constructor accept the struct as a parameter?
Feb 01 2017
On Wednesday, 1 February 2017 at 13:51:28 UTC, Minty Fresh wrote:On Wednesday, 1 February 2017 at 13:37:27 UTC, Suliman wrote:Because it's implemented not by me, and I do not want to touch its realization.Class constructor accept only set if fields like this(string login, string pass) Can I create structure, fill it, and than pass to constructor? Like this: ``` import std.stdio; struct ConnectSettings { string login; string pass; }; ConnectSettings cs; void main() { cs.login = "admin"; cs.pass = "mypass"; } ``` and than pass to constructor it's like: `... new SomeClass(cs)` I tried, but get error, that ctor accept only fields list. Can I unroll struct to it?tupleof is probably what you're looking for. ie. new SomeClass(cs.tupleof); That said, why not have the constructor accept the struct as a parameter?
Feb 01 2017