ExternalAddress.st
changeset 3957 925e247ae8df
parent 3552 686923fc2096
child 4673 39fa7949617b
--- a/ExternalAddress.st	Fri Jan 15 21:53:59 1999 +0100
+++ b/ExternalAddress.st	Thu Jan 21 21:33:33 1999 +0100
@@ -54,12 +54,12 @@
     anonymous).
 
     [author:]
-        Claus Gittinger
+	Claus Gittinger
 
     [see also:]
-        ByteArray
-        ExternalBytes ExternalFunction
-        ( how to write primitive code :html: programming/primitive.html )
+	ByteArray
+	ExternalBytes ExternalFunction
+	( how to write primitive code :html: programming/primitive.html )
 "
 !
 
@@ -97,6 +97,12 @@
 "
 ! !
 
+!ExternalAddress class methodsFor:'instance creation'!
+
+newAddress:addr
+    ^ self new setAddress:addr
+! !
+
 !ExternalAddress class methodsFor:'queries'!
 
 isBuiltInClass
@@ -190,8 +196,26 @@
     "Modified: / 26.5.1998 / 16:11:50 / cg"
 ! !
 
+!ExternalAddress methodsFor:'private accessing'!
+
+setAddress:anInteger
+    "set the address"
+
+%{  /* NOCONTEXT */
+
+    unsigned INT addr;
+
+    if (__isSmallInteger(anInteger)) {
+	addr = __intVal(anInteger);
+    } else {
+	addr = __longIntVal(anInteger);
+    }
+    __INST(address_) = (OBJ)addr;
+%}
+! !
+
 !ExternalAddress class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ExternalAddress.st,v 1.13 1998-06-11 15:13:29 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ExternalAddress.st,v 1.14 1999-01-21 20:33:33 cg Exp $'
 ! !