public bool ValuesAreEqual(ParametersImplWrapper obj) { ParameterImpl[] collection = this.m_opdParameters.Collection; ParameterImpl[] collection2 = obj.WrappedParametersImpl.Collection; if (collection == null) { if (collection2 == null) { return(true); } return(false); } if (collection2 == null) { return(false); } if (collection.Length != collection2.Length) { return(false); } for (int i = 0; i < collection.Length; i++) { if (!collection[i].ValuesAreEqual(collection2[i])) { return(false); } } return(true); }
public int GetChunkNameModifierForParamValues(ParametersImpl parameterValues, bool addEntry, ref bool?isShared, out ParametersImpl fullParameterValues) { if (parameterValues == null) { parameterValues = new ParametersImpl(); } if (this.m_parameterValuesToInfoIndexMap == null) { this.m_instanceParameterValues = new List <ParametersImplWrapper>(); this.m_parameterValuesToInfoIndexMap = new Dictionary <ParametersImplWrapper, int>(ParametersImplValuesComparer.Instance); } ParametersImplWrapper parametersImplWrapper = new ParametersImplWrapper(parameterValues); int count = default(int); if (this.m_parameterValuesToInfoIndexMap.TryGetValue(parametersImplWrapper, out count)) { fullParameterValues = this.m_instanceParameterValues[count].WrappedParametersImpl; if (!isShared.HasValue) { isShared = true; } } else { isShared = false; fullParameterValues = parameterValues; if (addEntry) { count = this.m_instanceParameterValues.Count; this.m_instanceParameterValues.Add(parametersImplWrapper); this.m_parameterValuesToInfoIndexMap.Add(parametersImplWrapper, count); } } return(count); }
public override void Deserialize(IntermediateFormatReader reader) { reader.RegisterDeclaration(SubReportInstance.m_Declaration); while (reader.NextMember()) { switch (reader.CurrentMember.MemberName) { case MemberName.SubReport: this.m_subReportDef = reader.ReadGlobalReference <SubReport>(); break; case MemberName.Parameters: { ParametersImplWrapper parametersImplWrapper = (ParametersImplWrapper)reader.ReadRIFObject(); if (parametersImplWrapper != null) { this.m_parameters = parametersImplWrapper.WrappedParametersImpl; } break; } case MemberName.ReportInstance: this.m_reportInstance = (IReference <ReportInstance>)reader.ReadRIFObject(); break; case MemberName.DataSetUniqueName: this.m_instanceUniqueName = reader.ReadString(); break; case MemberName.ThreadCulture: this.m_threadCulture = reader.ReadCultureInfo(); break; case MemberName.Status: this.m_status = (SubReport.Status)reader.ReadEnum(); break; case MemberName.ProcessedWithError: this.m_processedWithError = reader.ReadBoolean(); break; case MemberName.IsInstanceShared: { object obj2 = reader.ReadVariant(); if (obj2 != null) { this.m_isInstanceShared = (bool)obj2; } break; } case MemberName.DataChunkNameModifier: { object obj = reader.ReadVariant(); if (obj != null) { this.m_dataChunkNameModifier = (int)obj; } break; } default: Global.Tracer.Assert(false); break; } } }