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