Exemple #1
0
 public virtual IReflectArray Array()
 {
     if (_array == null)
     {
         _array = new NetArray(Parent());
     }
     return(_array);
 }
Exemple #2
0
		public virtual IReflectArray Array()
		{
			if(_array == null)
			{
				_array = new NetArray(Parent());
			}
			return _array;
		}
        public static IEnumerator Iterator(IReflectClass claxx, object obj)
        {
            IReflectArray reflectArray = claxx.Reflector().Array();

            if (reflectArray.IsNDimensional(claxx))
            {
                return(MultidimensionalArrayHandler.AllElementsMultidimensional(reflectArray, obj
                                                                                ));
            }
            return(Db4objects.Db4o.Internal.Handlers.Array.ArrayHandler.AllElements(reflectArray
                                                                                    , obj));
        }
 internal virtual void Configure(IReflectClass clazz, bool isPrimitive)
 {
     _isArray = clazz.IsArray();
     if (_isArray)
     {
         IReflectArray reflectArray = Reflector().Array();
         _isNArray    = reflectArray.IsNDimensional(clazz);
         _isPrimitive = reflectArray.GetComponentType(clazz).IsPrimitive();
     }
     else
     {
         _isPrimitive = isPrimitive | clazz.IsPrimitive();
     }
 }
        protected virtual BitMap4 NullItemsMap(IReflectArray reflector, object array)
        {
            int     arrayLength = reflector.GetLength(array);
            BitMap4 nullBitMap  = new BitMap4(arrayLength);

            for (int i = 0; i < arrayLength; i++)
            {
                if (reflector.Get(array, i) == null)
                {
                    nullBitMap.Set(i, true);
                }
            }
            return(nullBitMap);
        }
        internal static void FlattenCollection1(ObjectContainerBase stream, Object obj, Collection4 collection4)
        {
            Array arr = obj as Array;

            if (arr != null)
            {
                IReflectArray reflectArray = stream.Reflector().Array();

                Object[] flat = new Object[arr.Length];

                reflectArray.Flatten(obj, reflectArray.Dimensions(obj), 0, flat, 0);
                for (int i = 0; i < flat.Length; i++)
                {
                    FlattenCollection1(stream, flat[i], collection4);
                }
            }
            else
            {
                // If obj implements IEnumerable, add all elements to collection4
                IEnumerator enumerator = GetCollectionEnumerator(obj, true);

                // Add elements to collection if conversion was succesful
                if (enumerator != null)
                {
                    if (enumerator is IDictionaryEnumerator)
                    {
                        IDictionaryEnumerator dictEnumerator = enumerator as IDictionaryEnumerator;
                        while (enumerator.MoveNext())
                        {
                            FlattenCollection1(stream, dictEnumerator.Key, collection4);
                        }
                    }
                    else
                    {
                        while (enumerator.MoveNext())
                        {
                            // recursive call to flatten Collections in Collections
                            FlattenCollection1(stream, enumerator.Current, collection4);
                        }
                    }
                }
                else
                {
                    // If obj is not a Collection, it still needs to be collected.
                    collection4.Add(obj);
                }
            }
        }
		public ReflectArrayIterator(IReflectArray reflectArray, object array) : base(reflectArray
			.GetLength(array))
		{
			_reflectArray = reflectArray;
			_array = array;
		}
		public static IEnumerator AllElements(IReflectArray reflectArray, object array)
		{
			return new ReflectArrayIterator(reflectArray, array);
		}
		protected virtual BitMap4 NullItemsMap(IReflectArray reflector, object array)
		{
			int arrayLength = reflector.GetLength(array);
			BitMap4 nullBitMap = new BitMap4(arrayLength);
			for (int i = 0; i < arrayLength; i++)
			{
				if (reflector.Get(array, i) == null)
				{
					nullBitMap.Set(i, true);
				}
			}
			return nullBitMap;
		}
		protected object NewInstance(IReflectArray arrayReflector, ArrayInfo info, IReflectClass
			 clazz)
		{
			return arrayReflector.NewInstance(clazz, info);
		}
 public GenericArrayReflector(GenericReflector reflector)
 {
     _delegate = reflector.GetDelegate().Array();
 }
Exemple #12
0
 public static IEnumerator AllElementsMultidimensional(IReflectArray reflectArray,
                                                       object array)
 {
     return(new MultidimensionalArrayIterator(reflectArray, (object[])array));
 }
Exemple #13
0
 public ReflectArrayIterator(IReflectArray reflectArray, object array) : base(reflectArray
                                                                              .GetLength(array))
 {
     _reflectArray = reflectArray;
     _array        = array;
 }
 public static IEnumerator AllElementsMultidimensional(IReflectArray reflectArray,
     object array)
 {
     return new MultidimensionalArrayIterator(reflectArray, (object[]) array);
 }
 public static IEnumerator AllElements(IReflectArray reflectArray, object array)
 {
     return(new ReflectArrayIterator(reflectArray, array));
 }
 public MultidimensionalArrayIterator(IReflectArray reflectArray, object[] array)
 {
     _reflectArray = reflectArray;
     _array = array;
     Reset();
 }
 protected object NewInstance(IReflectArray arrayReflector, ArrayInfo info, IReflectClass
                              clazz)
 {
     return(arrayReflector.NewInstance(clazz, info));
 }
Exemple #18
0
 public MultidimensionalArrayIterator(IReflectArray reflectArray, object[] array)
 {
     _reflectArray = reflectArray;
     _array        = array;
     Reset();
 }
		public GenericArrayReflector(GenericReflector reflector)
		{
			_delegate = reflector.GetDelegate().Array();
		}