Support implicit Object[] handling as well as Object handling.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2081 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2002-12-21 00:44:25 +00:00
parent f04e98f481
commit 3b86a9c669
@@ -1,5 +1,5 @@
// //
// $Id: FieldMarshaller.java,v 1.3 2002/12/20 23:27:52 mdb Exp $ // $Id: FieldMarshaller.java,v 1.4 2002/12/21 00:44:25 mdb Exp $
package com.threerings.io; package com.threerings.io;
@@ -121,11 +121,12 @@ public abstract class FieldMarshaller
_marshallers.put(Streamable.class, gmarsh); _marshallers.put(Streamable.class, gmarsh);
// use the same generic marshaller for fields declared to by type // use the same generic marshaller for fields declared to by type
// Object with the expectation that they will contain only // Object or Object[] with the expectation that they will contain
// primitive types or Streamables; the runtime will fail // only primitive types or Streamables; the runtime will fail
// informatively if the user attempts to store non-Streamable // informatively if the user attempts to store non-Streamable
// objects in that field // objects in that field
_marshallers.put(Object.class, gmarsh); _marshallers.put(Object.class, gmarsh);
_marshallers.put((new Object[0]).getClass(), gmarsh);
// create marshallers for the primitive types // create marshallers for the primitive types
_marshallers.put(Boolean.TYPE, new FieldMarshaller() { _marshallers.put(Boolean.TYPE, new FieldMarshaller() {