Mercurial > projects > ldc
comparison tango/tango/io/Console.d @ 139:0ab29b838084 trunk
[svn r143] Fixed: a few bugs in debug information, still only line info, but should be correct files now :)
Fixed: tango.io.Console seems to be working now.
author | lindquist |
---|---|
date | Tue, 22 Jan 2008 00:01:16 +0100 |
parents | 0e28624814e8 |
children |
comparison
equal
deleted
inserted
replaced
138:aeddd4d533b3 | 139:0ab29b838084 |
---|---|
21 | 21 |
22 | 22 |
23 version (Posix) | 23 version (Posix) |
24 private import tango.stdc.posix.unistd; // needed for isatty() | 24 private import tango.stdc.posix.unistd; // needed for isatty() |
25 | 25 |
26 private extern(C) int printf(char*, ...); | |
27 | 26 |
28 /******************************************************************************* | 27 /******************************************************************************* |
29 | 28 |
30 low level console IO support. | 29 low level console IO support. |
31 | 30 |
68 | 67 |
69 **************************************************************/ | 68 **************************************************************/ |
70 | 69 |
71 private this (Conduit conduit, bool redirected) | 70 private this (Conduit conduit, bool redirected) |
72 { | 71 { |
73 printf("Console.Input.this(%p, %d)\n", conduit, redirected); | |
74 assert (conduit); | 72 assert (conduit); |
75 redirect = redirected; | 73 redirect = redirected; |
76 buffer = new Buffer (conduit); | 74 buffer = new Buffer (conduit); |
77 } | 75 } |
78 | 76 |
597 | 595 |
598 *******************************************************/ | 596 *******************************************************/ |
599 | 597 |
600 private this (Handle handle) | 598 private this (Handle handle) |
601 { | 599 { |
602 printf("Console.Conduit.this(%d)\n", handle); | |
603 reopen (handle); | 600 reopen (handle); |
604 redirected = (isatty(handle) is 0); | 601 redirected = (isatty(handle) is 0); |
605 } | 602 } |
606 } | 603 } |
607 } | 604 } |
625 | 622 |
626 ******************************************************************************/ | 623 ******************************************************************************/ |
627 | 624 |
628 static this () | 625 static this () |
629 { | 626 { |
630 printf("STATIC INIT FOR CONSOLE\n"); | |
631 printf("Cin conduit\n"); | |
632 auto conduit = new Console.Conduit (0); | 627 auto conduit = new Console.Conduit (0); |
633 assert(conduit); | |
634 printf("Cin input\n"); | |
635 Cin = new Console.Input (conduit, conduit.redirected); | 628 Cin = new Console.Input (conduit, conduit.redirected); |
636 | 629 |
637 printf("Cout\n"); | |
638 conduit = new Console.Conduit (1); | 630 conduit = new Console.Conduit (1); |
639 Cout = new Console.Output (conduit, conduit.redirected); | 631 Cout = new Console.Output (conduit, conduit.redirected); |
640 | 632 |
641 printf("Cerr\n"); | |
642 conduit = new Console.Conduit (2); | 633 conduit = new Console.Conduit (2); |
643 Cerr = new Console.Output (conduit, conduit.redirected); | 634 Cerr = new Console.Output (conduit, conduit.redirected); |
644 } | 635 } |
645 | 636 |
646 | 637 |