예제 #1
0
            public IMap Add(JwtMember value)
            {
                IMap map;

                if (value.Name.Equals(_value1.Name))
                {
                    map = new FourElementMap(value, _value2, _value3, _value4);
                }
                else if (value.Name.Equals(_value2.Name))
                {
                    map = new FourElementMap(_value1, value, _value3, _value4);
                }
                else if (value.Name.Equals(_value3.Name))
                {
                    map = new FourElementMap(_value1, _value2, value, _value4);
                }
                else if (value.Name.Equals(_value4.Name))
                {
                    map = new FourElementMap(_value1, _value2, _value3, value);
                }
                else
                {
                    var multi = new MultiElementMap(5);
                    multi.UnsafeStore(0, _value1);
                    multi.UnsafeStore(1, _value2);
                    multi.UnsafeStore(2, _value3);
                    multi.UnsafeStore(3, _value4);
                    multi.UnsafeStore(4, value);
                    map = multi;
                }

                return(map);
            }
예제 #2
0
        internal void FastAdd(JwtMember value1, JwtMember value2, JwtMember value3, JwtMember value4, JwtMember value5)
        {
            var map = new MultiElementMap(5);

            map.UnsafeStore(0, value1);
            map.UnsafeStore(1, value2);
            map.UnsafeStore(2, value3);
            map.UnsafeStore(3, value4);
            map.UnsafeStore(4, value5);
            _map = map;
        }
예제 #3
0
            public IMap Add(JwtMember value)
            {
                // Create a new one-element map to store the key/value pair
                //map = new OneElementMap(value);
                var map = new MultiElementMap(1);

                map.UnsafeStore(0, value);
                return(map);
            }