- enter the lock password
- lock this page after save
タイトル:
最終更新情報: 12:51:50 pm on 4 November 2007 by swikis.ddo.jp
<style type="text/css">.st{color: brown}</style> !Improvements: - Safer Boolean reading -- Do not use "Complier evaluate". - DataAndTime (de)serialization (Squeak) - Font (de)serialization (Squeak) - Added a new option "SixxSettings>>useNCR" -- You can specify whether to write multi byte string by numeric character references or not. - Added a new class SixxShapeChangeReadStream for supporting class shape changes. - Added more hooks for customizing serialization/deserialization. - Added a new option "SixxSettings>>useCompactTags" --If this option is on, *CIXX* (Compact SIXX) will be generated. - Refactored *true, false and nil serialization*. !SIXX Hooks: |Customizing serialization|| |Object>>sixxPrepareWrite|It is called before the instance is written in SIXX.| |Object>>sixxWriteValue|Return the object actually serialized.| |Object>>sixxIgnorableInstVarNames|Specify the instance variables that are not written in SIXX| |Customizing deserialization|| |Object>>sixxInitialize|It is called immediately after the instance is read from SIXX| |Object>>sixxReadValue|Return the object for the client from the read instance.| It became easier to implement the Memento pattern by sixxWriteValue and sixxReadValue. The user can read and write the object without considering using Memento at all. !Shape change support: SixxShapeChangeReadStream enables you to read class shape changed instances. It supports renamed, removed and newly added instance variables. <code class="st"> srs := SixxShapeChangeReadStream on: oldSixx readStream. srs shapeChangers at:#SmallIntegerOLD put: SmallInteger . "simple renaming" srs shapeChangers at: #SixxShapeChangedObject put: SixxMockShapeChanger. "You can implement ShapeChanger for more complex conversion. " </code> Here is an excerpt of the comment of ShapeChanger. <code class="st"> Basically, you should subclass me and override three methods. (YourShapeChanger >> shapeChangedObjectClass) Return a newly introduced class for old instances. (YourShapeChanger >> sixxInstVarNamed: varName put: value) Override this method for setting converted values to the shape changed object. Example: "#oldNamedVar1 inst var was renamed to #renamedAtt1" varName == #oldNamedVar1 ifTrue: [^self attributesMap at: #renamedAtt1 put: value]. "#oldNamedVar2 inst var was removed." varName == #oldNamedVar2 ifTrue: [^self]. super sixxInstVarNamed: varName put: value (YourShapeChanger >> initializeShapeChangedObject ) Override this method for setting newly introduced values to the shape changed object. </code>
次回保存時にアラートメールを送信するメールアドレス一覧: