--- a/InlineObject.st Fri Sep 11 15:04:28 2009 +0200
+++ b/InlineObject.st Fri Sep 11 15:04:34 2009 +0200
@@ -1,3 +1,14 @@
+"
+ COPYRIGHT (c) 2009 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
"{ Package: 'stx:libbasic' }"
Object subclass:#InlineObject
@@ -7,9 +18,59 @@
category:'Programming-Support'
!
+!InlineObject class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 2009 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+!
+
+documentation
+"
+ All inlineObjects will be instances of an anonymous subclass of me.
+ InlineObjects are an experimental feature and written as literals of the form:
+
+ #{
+ filedName1: value1.
+ filedName2: value2.
+ ...
+ filedNameN: valueN.
+ }
+
+ For example:
+
+ #{
+ firstName: 'Peter'.
+ lastName: 'Miller'.
+ age: 25.
+ }
+
+"
+! !
+
+!InlineObject methodsFor:'printing & storing'!
+
+storeOn:aStream
+ aStream nextPutAll:'#{'.
+ self class allInstVarNames keysAndValuesDo:[:i :nm |
+ aStream nextPutAll:nm; nextPutAll:':'.
+ (self instVarAt:i) storeOn:aStream.
+ aStream nextPutAll:'. '.
+ ].
+ aStream nextPutAll:'}'.
+! !
!InlineObject class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/InlineObject.st,v 1.1 2009-01-14 18:28:59 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/InlineObject.st,v 1.2 2009-09-11 13:04:34 cg Exp $'
! !