Agnos.HeteroMap.Add C# (CSharp) Method

Add() public method

a Version of Add that implements IDictionary.Add. It attempts to infer the packers for the key and for the value
public Add ( Object key, Object value ) : void
key Object
value Object
return void
        public void Add(Object key, Object value)
        {
            Packers.AbstractPacker keypacker = getPackerForBuiltinType (key);
            Packers.AbstractPacker valpacker = getPackerForBuiltinType (value);
            if (keypacker == null) {
                throw new ArgumentException ("cannot deduce key packer " + key.GetType ().ToString () + ", use 4-argument Add()");
            }
            if (valpacker == null) {
                throw new ArgumentException ("cannot deduce value packer " + value.GetType ().ToString () + ", use 4-argument Add()");
            }
            Add (key, keypacker, value, valpacker);
        }

Same methods

HeteroMap::Add ( Object key, Object value, Packers valpacker ) : void
HeteroMap::Add ( Object key, Packers keypacker, Object value, Packers valpacker ) : void
HeteroMap::Add ( String key, String value ) : void
HeteroMap::Add ( String key, int value ) : void
HeteroMap::Add ( int key, String value ) : void
HeteroMap::Add ( int key, int value ) : void

Usage Example

Exemplo n.º 1
0
            public override Object unpack(ITransport transport)
            {
                int       length = (int)Int32.unpack(transport);
                HeteroMap map    = new HeteroMap(length);

                for (int i = 0; i < length; i++)
                {
                    int            keypid    = (int)Int32.unpack(transport);
                    AbstractPacker keypacker = getPacker(keypid);
                    Object         key       = keypacker.unpack(transport);

                    int            valpid    = (int)Int32.unpack(transport);
                    AbstractPacker valpacker = getPacker(valpid);
                    Object         val       = valpacker.unpack(transport);

                    map.Add(key, keypacker, val, valpacker);
                }
                return(map);
            }