1d36299e3c
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3855 542714f4-19e9-0310-aa3c-eee0fc999fb1
40 lines
982 B
ActionScript
40 lines
982 B
ActionScript
package com.threerings.io.streamers {
|
|
|
|
import com.threerings.io.ObjectInputStream;
|
|
import com.threerings.io.ObjectOutputStream;
|
|
import com.threerings.io.Streamer;
|
|
|
|
/**
|
|
* A Streamer for Array objects.
|
|
*/
|
|
public class ArrayStreamer extends Streamer
|
|
{
|
|
public function ArrayStreamer ()
|
|
{
|
|
super(Array, "[Ljava.lang.Object");
|
|
}
|
|
|
|
public override function createObject (ins :ObjectInputStream) :*
|
|
{
|
|
return new Array(ins.readInt());
|
|
}
|
|
|
|
public override function writeObject (obj :*, out :ObjectOutputStream) :void
|
|
{
|
|
var arr :Array = (obj as Array);
|
|
out.writeInt(arr.length);
|
|
for (var ii :int = 0; ii < arr.length; ii++) {
|
|
out.writeObject(arr[ii]);
|
|
}
|
|
}
|
|
|
|
public override function readObject (obj :*, ins :ObjectInputStream) :void
|
|
{
|
|
var arr :Array = (obj as Array);
|
|
for (var ii :int = 0; ii < arr.length; ii++) {
|
|
arr[ii] = ins.readObject();
|
|
}
|
|
}
|
|
}
|
|
}
|