class: Structure
added: #initializeOneInstance
removed: #initialize
changed:
#newWith:values:
#primAddSelector:withMethod:
lazy initialization
--- a/Structure.st Wed Apr 22 20:03:50 2015 +0200
+++ b/Structure.st Fri May 08 00:29:14 2015 +0200
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
COPYRIGHT (c) 1996 by Claus Gittinger
All Rights Reserved
@@ -122,7 +124,7 @@
!Structure class methodsFor:'initialization'!
-initialize
+initializeOneInstance
OneInstance isNil ifTrue:[
"/ check if the first few instvars correspond to Behavior's definition:
@@ -210,6 +212,10 @@
|arr sels mthds nInsts behviorsInstSize|
+ OneInstance isNil ifTrue:[
+ self initializeOneInstance
+ ].
+
nInsts := names size.
sels := names collect:[:nm | nm asSymbol].
@@ -362,7 +368,7 @@
val := super primAddSelector:newSelector withMethod:newMethod.
OneInstance := nil.
- self initialize.
+ "/ self initializeOneInstance.
^ val
! !
@@ -1437,12 +1443,10 @@
!Structure class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libcomp/Structure.st,v 1.27 2015-04-22 18:03:50 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libcomp/Structure.st,v 1.28 2015-05-07 22:29:14 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libcomp/Structure.st,v 1.27 2015-04-22 18:03:50 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libcomp/Structure.st,v 1.28 2015-05-07 22:29:14 cg Exp $'
! !
-
-Structure initialize!