Skip to content

Instantly share code, notes, and snippets.

@goshki
Created May 11, 2011 08:57
Show Gist options
  • Save goshki/966140 to your computer and use it in GitHub Desktop.
Save goshki/966140 to your computer and use it in GitHub Desktop.
ActionScript 3 serialization of multi-nested vectors
package {
import flash.text.TextField;
import flash.utils.ByteArray;
import flash.display.Sprite;
import flash.net.registerClassAlias;
public class MultiNestedVectorsSerializationTest extends Sprite {
public function FlashTest() {
registerClassAlias( "String", String );
registerClassAlias( "XML", XML );
var myObject:Object = new Object();
// Test strings
var myStrings:Vector.<String> = new Vector.<String>();
var myStringsVectors:Vector.<Vector.<String>> = new Vector.<Vector.<String>>();
myStrings.push( "hello" );
myStrings.push( "there" );
myStringsVectors.push( myStrings );
myObject.myStringsVectors = myStringsVectors;
// Test XMLs
var myXMLs:Vector.<XML> = new Vector.<XML>();
myXMLs.push( new XML( <text>Hello</text> ) );
myXMLs.push( new XML( <text>there</text> ) );
var myXMLsVectors:Vector.<Vector.<XML>> = new Vector.<Vector.<XML>>();
myXMLsVectors.push( myXMLs );
myObject.myXMLsVectors = myXMLsVectors;
// Serialize
var bytes:ByteArray = new ByteArray();
bytes.writeObject( myObject );
// Deserialize
bytes.position = 0;
myObject = bytes.readObject();
// Assert
var debug:TextField = new TextField();
debug.appendText( "" + myObject.myStringsVectors[0][0] + " " + myObject.myXMLsVectors[0][1] );
addChild( debug );
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment