1 Console addSlotsFrom: ExternalResource.
2 Console _map delegates at: 0 put: ExternalResource traitsWindow.
3 "The Console as an ExternalResource object."
7 "A convenience method for the Console as a Stream resource; do NOT repeat this
8 pattern without determining that ; can have no other meaning for the resource."
11 co@(Console writer) skip: n
14 [n timesRepeat: (co nextPut: $\s)].
15 n isNegative ifTrue: [n timesRepeat: [co nextPut: $\b]].
19 _@Console isOpen [True].
21 _@(Console writer) elementType
22 [ASCIIString Character].
24 _@(Console writer) collectionType
27 _@(Console reader) elementType
28 [ASCIIString Character].
30 _@(Console reader) collectionType
33 _@(Console reader) isAtEnd [False].
34 _@(Console writer) isAtEnd [False].
36 c@Console flush [c writer flush. c reader flush].
37 _@(Console reader) flush [].
38 w@(Console writer) flush [w resource flushOutput].
40 Console interactor ::= ReadWriteStream clone.
41 "A singleton which delegates to ConsoleInput and ConsoleOutput in order to
42 provide ReadWriteStream access for the Console."
44 _@(Console interactor) elementType
45 [ASCIIString Character].
47 _@(Console interactor) collectionType
50 _@(Console interactor) isAtEnd [False].
51 _@(Console interactor) next [Console reader next].
52 _@(Console interactor) next: n [Console reader next: n].
53 _@(Console interactor) nextPut: obj [Console writer nextPut: obj].
54 _@(Console interactor) nextPutAll: c [Console writer nextPutAll: c].
55 _@(Console interactor) flush [Console reader flush. Console writer flush].
56 _@(Console interactor) nextLine [Console reader nextLine].
58 conditions DebugConsole ::= Console clone.
59 "DebugConsole addDelegate: Console."
60 "The interaction to which Error messages are sent and handler input is
61 received. This should be StdErr and overridable."
62 DebugConsole handle := 1.
63 DebugConsole writeStream resource := DebugConsole.