Use #raiseRequest to invoke the (inherently) proceedable QuerySignal.
authorStefan Vogel <sv@exept.de>
Mon, 02 Mar 1998 13:01:14 +0100
changeset 3307 08ad28464911
parent 3306 66c9ab533baa
child 3308 a6848d4b875d
Use #raiseRequest to invoke the (inherently) proceedable QuerySignal. Define #query (to be used instead of #raise).
QuerySig.st
QuerySignal.st
--- a/QuerySig.st	Fri Feb 27 19:30:19 1998 +0100
+++ b/QuerySig.st	Mon Mar 02 13:01:14 1998 +0100
@@ -10,8 +10,6 @@
  hereby transferred.
 "
 
-'From Smalltalk/X, Version:3.1.9 on 31-aug-1997 at 8:06:37 pm'                  !
-
 Signal subclass:#QuerySignal
 	instanceVariableNames:'defaultAnswer hasDefault'
 	classVariableNames:''
@@ -119,7 +117,7 @@
                 ] do:[
                     [
                         1 // zero.  'an error which is caught in the handler'.
-                        (querySignal raise) == true ifTrue:[
+                        (querySignal query) == true ifTrue:[
                             Transcript showCR:'query says: ok'.
                         ] ifFalse:[
                             Transcript showCR:'query says: no'
@@ -140,7 +138,7 @@
         'nesting'.
         [
             [
-                (querySignal raise) == true ifTrue:[
+                (querySignal query) == true ifTrue:[
                     Transcript showCR:'query says: ok'.
                 ] ifFalse:[
                     Transcript showCR:'query says: no'
@@ -253,7 +251,7 @@
        q := QuerySignal new.
 
        q answer:true do:[
-          Transcript showCR:'query answers: ' , (q raise printString).
+          Transcript showCR:'query answers: ' , (q query printString).
        ]
       "
 
@@ -263,15 +261,16 @@
        q := QuerySignal new.
 
        q answer:false do:[
-          Transcript showCR:'first query answers: ' , (q raise printString).
+          Transcript showCR:'first query answers: ' , (q query printString).
           q answer:true do:[
-              Transcript showCR:'second query answers: ' , (q raise printString).
+              Transcript showCR:'second query answers: ' , (q query printString).
           ]
        ]
       "
 
-    "Created: 10.7.1996 / 15:08:20 / cg"
-    "Modified: 14.10.1996 / 16:59:18 / cg"
+    "Created: / 10.7.1996 / 15:08:20 / cg"
+    "Modified: / 14.10.1996 / 16:59:18 / cg"
+    "Modified: / 2.3.1998 / 10:41:45 / stefan"
 ! !
 
 !QuerySignal methodsFor:'initialization'!
@@ -296,15 +295,15 @@
                 handler := [:ex | ex proceedWith:nil]
             ] ifFalse:[
                 handler := [:ex | ex proceedWith:someValue].
-	    ]
+            ]
         ]
     ].
     self handlerBlock:handler.
 
     "
-     QuerySignal new raise
-     (QuerySignal new defaultAnswer:true) raise 
-     (QuerySignal new defaultAnswer:false) raise
+     QuerySignal new query
+     (QuerySignal new defaultAnswer:true) query 
+     (QuerySignal new defaultAnswer:false) query
     "
 
     "
@@ -312,7 +311,7 @@
 
      sig := QuerySignal new.
      sig defaultAnswer:false.
-     rslt := sig raise.
+     rslt := sig query.
      Transcript showCR:rslt.
     "
 
@@ -323,12 +322,13 @@
      sig defaultAnswer:false.
      sig answer:true 
      do:[
-         rslt := sig raise
+         rslt := sig query
      ].
      Transcript showCR:rslt.
     "
 
-    "Modified: 3.1.1997 / 15:14:40 / cg"
+    "Modified: / 3.1.1997 / 15:14:40 / cg"
+    "Modified: / 2.3.1998 / 10:42:14 / stefan"
 ! !
 
 !QuerySignal methodsFor:'queries'!
@@ -357,10 +357,10 @@
     "Modified: 22.4.1996 / 13:45:10 / cg"
 !
 
-raise
+query
     "raise the query - return the handlers value, or the default
      value, if there is no handler.
-     This is exactly the functionality of my inherited method,
+     Invoking the handler is exactly the functionality of Signal>>raiseRequest,
      but we can do it faster here."
 
     |con|
@@ -372,7 +372,7 @@
                                             or:#handle:from:do:.
         con notNil ifTrue:[
             (con selector == #handle:do:) ifFalse:[
-                ^ super raise
+                ^ super raiseRequest
             ].
             (con receiver == self) ifTrue:[
                 "/ found a non-busy handler ...
@@ -381,7 +381,7 @@
                 con := con sender.
                 con selector == #answer:do: ifFalse:[
                     con receiver == self ifFalse:[
-                        ^ super raise
+                        ^ super raiseRequest
                     ]
                 ].
                 ^ con argAt:1
@@ -390,18 +390,35 @@
     ].
     "/ no handler found - return the default value
     hasDefault == true ifTrue:[
-	^ defaultAnswer
+        ^ defaultAnswer
     ].
     handlerBlock isNil ifTrue:[
         ^ nil
     ].
-    ^ super raise
+    ^ super raiseRequest
+
+    "Modified: / 31.8.1997 / 08:05:32 / cg"
+    "Modified: / 2.3.1998 / 10:40:39 / stefan"
+!
+
+raise
+    "redefined to use #query"
 
-    "Modified: 31.8.1997 / 08:05:32 / cg"
+    ^ self query
+
+    "Modified: / 2.3.1998 / 10:39:05 / stefan"
+!
+
+raiseRequest
+    "redefined to use #query"
+
+    ^ self query
+
+    "Created: / 2.3.1998 / 10:41:03 / stefan"
 ! !
 
 !QuerySignal class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Attic/QuerySig.st,v 1.21 1997-09-06 17:22:50 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Attic/QuerySig.st,v 1.22 1998-03-02 12:01:14 stefan Exp $'
 ! !
--- a/QuerySignal.st	Fri Feb 27 19:30:19 1998 +0100
+++ b/QuerySignal.st	Mon Mar 02 13:01:14 1998 +0100
@@ -10,8 +10,6 @@
  hereby transferred.
 "
 
-'From Smalltalk/X, Version:3.1.9 on 31-aug-1997 at 8:06:37 pm'                  !
-
 Signal subclass:#QuerySignal
 	instanceVariableNames:'defaultAnswer hasDefault'
 	classVariableNames:''
@@ -119,7 +117,7 @@
                 ] do:[
                     [
                         1 // zero.  'an error which is caught in the handler'.
-                        (querySignal raise) == true ifTrue:[
+                        (querySignal query) == true ifTrue:[
                             Transcript showCR:'query says: ok'.
                         ] ifFalse:[
                             Transcript showCR:'query says: no'
@@ -140,7 +138,7 @@
         'nesting'.
         [
             [
-                (querySignal raise) == true ifTrue:[
+                (querySignal query) == true ifTrue:[
                     Transcript showCR:'query says: ok'.
                 ] ifFalse:[
                     Transcript showCR:'query says: no'
@@ -253,7 +251,7 @@
        q := QuerySignal new.
 
        q answer:true do:[
-          Transcript showCR:'query answers: ' , (q raise printString).
+          Transcript showCR:'query answers: ' , (q query printString).
        ]
       "
 
@@ -263,15 +261,16 @@
        q := QuerySignal new.
 
        q answer:false do:[
-          Transcript showCR:'first query answers: ' , (q raise printString).
+          Transcript showCR:'first query answers: ' , (q query printString).
           q answer:true do:[
-              Transcript showCR:'second query answers: ' , (q raise printString).
+              Transcript showCR:'second query answers: ' , (q query printString).
           ]
        ]
       "
 
-    "Created: 10.7.1996 / 15:08:20 / cg"
-    "Modified: 14.10.1996 / 16:59:18 / cg"
+    "Created: / 10.7.1996 / 15:08:20 / cg"
+    "Modified: / 14.10.1996 / 16:59:18 / cg"
+    "Modified: / 2.3.1998 / 10:41:45 / stefan"
 ! !
 
 !QuerySignal methodsFor:'initialization'!
@@ -296,15 +295,15 @@
                 handler := [:ex | ex proceedWith:nil]
             ] ifFalse:[
                 handler := [:ex | ex proceedWith:someValue].
-	    ]
+            ]
         ]
     ].
     self handlerBlock:handler.
 
     "
-     QuerySignal new raise
-     (QuerySignal new defaultAnswer:true) raise 
-     (QuerySignal new defaultAnswer:false) raise
+     QuerySignal new query
+     (QuerySignal new defaultAnswer:true) query 
+     (QuerySignal new defaultAnswer:false) query
     "
 
     "
@@ -312,7 +311,7 @@
 
      sig := QuerySignal new.
      sig defaultAnswer:false.
-     rslt := sig raise.
+     rslt := sig query.
      Transcript showCR:rslt.
     "
 
@@ -323,12 +322,13 @@
      sig defaultAnswer:false.
      sig answer:true 
      do:[
-         rslt := sig raise
+         rslt := sig query
      ].
      Transcript showCR:rslt.
     "
 
-    "Modified: 3.1.1997 / 15:14:40 / cg"
+    "Modified: / 3.1.1997 / 15:14:40 / cg"
+    "Modified: / 2.3.1998 / 10:42:14 / stefan"
 ! !
 
 !QuerySignal methodsFor:'queries'!
@@ -357,10 +357,10 @@
     "Modified: 22.4.1996 / 13:45:10 / cg"
 !
 
-raise
+query
     "raise the query - return the handlers value, or the default
      value, if there is no handler.
-     This is exactly the functionality of my inherited method,
+     Invoking the handler is exactly the functionality of Signal>>raiseRequest,
      but we can do it faster here."
 
     |con|
@@ -372,7 +372,7 @@
                                             or:#handle:from:do:.
         con notNil ifTrue:[
             (con selector == #handle:do:) ifFalse:[
-                ^ super raise
+                ^ super raiseRequest
             ].
             (con receiver == self) ifTrue:[
                 "/ found a non-busy handler ...
@@ -381,7 +381,7 @@
                 con := con sender.
                 con selector == #answer:do: ifFalse:[
                     con receiver == self ifFalse:[
-                        ^ super raise
+                        ^ super raiseRequest
                     ]
                 ].
                 ^ con argAt:1
@@ -390,18 +390,35 @@
     ].
     "/ no handler found - return the default value
     hasDefault == true ifTrue:[
-	^ defaultAnswer
+        ^ defaultAnswer
     ].
     handlerBlock isNil ifTrue:[
         ^ nil
     ].
-    ^ super raise
+    ^ super raiseRequest
+
+    "Modified: / 31.8.1997 / 08:05:32 / cg"
+    "Modified: / 2.3.1998 / 10:40:39 / stefan"
+!
+
+raise
+    "redefined to use #query"
 
-    "Modified: 31.8.1997 / 08:05:32 / cg"
+    ^ self query
+
+    "Modified: / 2.3.1998 / 10:39:05 / stefan"
+!
+
+raiseRequest
+    "redefined to use #query"
+
+    ^ self query
+
+    "Created: / 2.3.1998 / 10:41:03 / stefan"
 ! !
 
 !QuerySignal class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/QuerySignal.st,v 1.21 1997-09-06 17:22:50 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/QuerySignal.st,v 1.22 1998-03-02 12:01:14 stefan Exp $'
 ! !