UnaryNode.st
changeset 1589 e50e9f5bf31b
parent 1533 bff4a03d6d48
child 1734 fb882528e19b
--- a/UnaryNode.st	Wed Apr 20 16:41:54 2005 +0200
+++ b/UnaryNode.st	Wed Apr 20 16:44:02 2005 +0200
@@ -282,27 +282,14 @@
 
 !UnaryNode methodsFor:'printing & storing'!
 
-printOn:aStream indent:i
+printOn:aStream indent:i 
     "prettyprint the expression represented by the receiver"
-
-    |needParen|
-
-    needParen := false.
-    receiver isMessage ifTrue:[
-	receiver isUnaryMessage ifFalse:[
-	    needParen := true
-	].
-    ].
-    needParen ifTrue:[
-	aStream nextPutAll:'('
-    ].
-    receiver printOn:aStream.
-    needParen ifTrue:[
-	aStream nextPutAll:') '
-    ].
+    
+    receiver printOn:aStream indent:i parenthized:(receiver precedence < self precedence).
     aStream space.
     selector printString printOn:aStream.
-"    aStream space.     "
+
+    "Modified: / 20-04-2005 / 14:36:26 / cg"
 ! !
 
 !UnaryNode methodsFor:'queries'!
@@ -340,10 +327,16 @@
     ^ true
 
     "Modified: 23.10.1997 / 02:05:18 / cg"
+!
+
+precedence
+    ^ 100
+
+    "Created: / 20-04-2005 / 14:10:34 / cg"
 ! !
 
 !UnaryNode class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libcomp/UnaryNode.st,v 1.44 2004-07-07 09:17:53 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libcomp/UnaryNode.st,v 1.45 2005-04-20 14:44:02 cg Exp $'
 ! !