Ejemplo n.º 1
0
 public EdiStructure(EdiStructureType container, object instance, int index, Queue<EdiEntry> cache) {
     ValidationUtils.ArgumentNotNull(instance, "instance");
     _Container = container;
     _Instance = instance;
     _Index = index;
     _Descriptor = typeStore.Get(instance.GetType());
     _CachedReads = cache;
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="T:indice.Edi.Serialization.EdiStructure"/> class.
 /// </summary>
 /// <param name="container">Container.</param>
 /// <param name="instance">Instance.</param>
 /// <param name="index">Index.</param>
 /// <param name="cache">Cache.</param>
 public EdiStructure(EdiStructureType container, object instance, int index, Queue <EdiEntry> cache)
 {
     ValidationUtils.ArgumentNotNull(instance, "instance");
     _Container   = container;
     _Instance    = instance;
     _Index       = index;
     _Descriptor  = typeStore.Get(instance.GetType());
     _CachedReads = cache;
 }
Ejemplo n.º 3
0
 public EdiStructure(EdiStructureType structureType, EdiStructure parent, EdiPropertyDescriptor property, object instance, int index, Queue <EdiEntry> cache)
 {
     ValidationUtils.ArgumentNotNull(instance, "instance");
     _StructureType      = structureType;
     _Container          = parent;
     _Instance           = instance;
     _Index              = index;
     _Descriptor         = typeStore.Get(instance.GetType());
     _CachedReads        = cache;
     _Conditions         = Descriptor.Attributes.OfType <EdiConditionAttribute>().Concat(property?.Conditions ?? new EdiConditionAttribute[0]).ToArray();
     _ConditionStackMode = _Conditions.Length > 0 && (
         property?.ConditionStackMode == EdiConditionStackMode.Any ||
         Descriptor.Attributes.OfType <EdiAnyAttribute>().Any())
         ? EdiConditionStackMode.Any : EdiConditionStackMode.All;
 }