digitalmars.D.learn - Bug in documentation or misunderstanding it?
- Suliman (19/19) Jan 26 2017 I read docs and can't understand what's wrong. Or I am do not
- Stefan Koch (2/5) Jan 26 2017 You have to import typecons.
- H. S. Teoh via Digitalmars-d-learn (8/17) Jan 26 2017 Those are compile-time parameters. You specify them in a compile-time
- Suliman (3/23) Jan 26 2017 So I am right about others items about for example that `=` is
- Suliman (2/29) Jan 26 2017 Why this code is work: `file.byLine(KeepTerminator.no, 'm')`
- H. S. Teoh via Digitalmars-d-learn (9/39) Jan 27 2017 Yes, the `=` means the parameter has a default value. This applies to
I read docs and can't understand what's wrong. Or I am do not understand it, or there is come mistake. Let's look at function https://dlang.org/phobos/std_stdio.html#.File.byLine auto byLine(Terminator = char, Char = char)(KeepTerminator keepTerminator = No.keepTerminator, Terminator terminator = '\x0a') what does mean first groups of scope: (Terminator = char, Char = char) ? The second one as I understand it's options symbol `=` mean that there is some default values, so if I will call function I can do not set them, so predefined values will be used. Am I right? And If I do not want predefined I can pass my own like: `byLine(No.keepTerminator, 'SomeLetter')` for example: `file.byLine(No.keepTerminator, 'a')` But when I compile simple example I am getting compilation error: `undefined identifier 'No'` Where I am wrong?
Jan 26 2017
On Thursday, 26 January 2017 at 17:38:59 UTC, Suliman wrote:I read docs and can't understand what's wrong. Or I am do not understand it, or there is come mistake. [...]You have to import typecons.
Jan 26 2017
On Thu, Jan 26, 2017 at 05:38:59PM +0000, Suliman via Digitalmars-d-learn wrote:I read docs and can't understand what's wrong. Or I am do not understand it, or there is come mistake. Let's look at function https://dlang.org/phobos/std_stdio.html#.File.byLine auto byLine(Terminator = char, Char = char)(KeepTerminator keepTerminator = No.keepTerminator, Terminator terminator = '\x0a') what does mean first groups of scope: (Terminator = char, Char = char) ?Those are compile-time parameters. You specify them in a compile-time argument list using the !(...) construct, for example: auto lines = File("myfile.txt") .byLine!(dchar, char)(Yes.keepTerminator, '\u263a'); T -- If lightning were to ever strike an orchestra, it'd always hit the conductor first.
Jan 26 2017
On Thursday, 26 January 2017 at 17:52:24 UTC, H. S. Teoh wrote:On Thu, Jan 26, 2017 at 05:38:59PM +0000, Suliman via Digitalmars-d-learn wrote:So I am right about others items about for example that `=` is optional?I read docs and can't understand what's wrong. Or I am do not understand it, or there is come mistake. Let's look at function https://dlang.org/phobos/std_stdio.html#.File.byLine auto byLine(Terminator = char, Char = char)(KeepTerminator keepTerminator = No.keepTerminator, Terminator terminator = '\x0a') what does mean first groups of scope: (Terminator = char, Char = char) ?Those are compile-time parameters. You specify them in a compile-time argument list using the !(...) construct, for example: auto lines = File("myfile.txt") .byLine!(dchar, char)(Yes.keepTerminator, '\u263a'); T
Jan 26 2017
On Thursday, 26 January 2017 at 18:42:29 UTC, Suliman wrote:On Thursday, 26 January 2017 at 17:52:24 UTC, H. S. Teoh wrote:Why this code is work: `file.byLine(KeepTerminator.no, 'm')`On Thu, Jan 26, 2017 at 05:38:59PM +0000, Suliman via Digitalmars-d-learn wrote:So I am right about others items about for example that `=` is optional?I read docs and can't understand what's wrong. Or I am do not understand it, or there is come mistake. Let's look at function https://dlang.org/phobos/std_stdio.html#.File.byLine auto byLine(Terminator = char, Char = char)(KeepTerminator keepTerminator = No.keepTerminator, Terminator terminator = '\x0a') what does mean first groups of scope: (Terminator = char, Char = char) ?Those are compile-time parameters. You specify them in a compile-time argument list using the !(...) construct, for example: auto lines = File("myfile.txt") .byLine!(dchar, char)(Yes.keepTerminator, '\u263a'); T
Jan 26 2017
On Thu, Jan 26, 2017 at 06:47:21PM +0000, Suliman via Digitalmars-d-learn wrote:On Thursday, 26 January 2017 at 18:42:29 UTC, Suliman wrote:Yes, the `=` means the parameter has a default value. This applies to both compile-time parameters and runtime parameters. So: file.byLine(KeepTerminator.no); is the same as: file.byLine!(char, char)(No.keepTerminator, '\x0a'); T -- There are 10 kinds of people in the world: those who can count in binary, and those who can't.On Thursday, 26 January 2017 at 17:52:24 UTC, H. S. Teoh wrote:Why this code is work: `file.byLine(KeepTerminator.no, 'm')`On Thu, Jan 26, 2017 at 05:38:59PM +0000, Suliman via Digitalmars-d-learn wrote:So I am right about others items about for example that `=` is optional?I read docs and can't understand what's wrong. Or I am do not understand it, or there is come mistake. Let's look at function https://dlang.org/phobos/std_stdio.html#.File.byLine auto byLine(Terminator = char, Char = char)(KeepTerminator keepTerminator = No.keepTerminator, Terminator terminator = '\x0a') what does mean first groups of scope: (Terminator = char, Char = char) ?Those are compile-time parameters. You specify them in a compile-time argument list using the !(...) construct, for example: auto lines = File("myfile.txt") .byLine!(dchar, char)(Yes.keepTerminator, '\u263a'); T
Jan 27 2017