Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Common / internal / materialization / recordstatescratchpad.cs / 1599186 / recordstatescratchpad.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Linq; using System.Linq.Expressions; using System.Runtime.CompilerServices; namespace System.Data.Common.Internal.Materialization { ////// Used in the Translator to aggregate information about a (nested) record /// state. After the translator visits the columnMaps, it will compile /// the recordState(s) which produces an immutable RecordStateFactory that /// can be shared amongst many query instances. /// internal class RecordStateScratchpad { private int _stateSlotNumber; internal int StateSlotNumber { get { return _stateSlotNumber; } set { _stateSlotNumber = value; } } private int _columnCount; internal int ColumnCount { get { return _columnCount; } set { _columnCount = value; } } private DataRecordInfo _dataRecordInfo; internal DataRecordInfo DataRecordInfo { get { return _dataRecordInfo; } set { _dataRecordInfo = value; } } private Expression _gatherData; internal Expression GatherData { get { return _gatherData; } set { _gatherData = value; } } private string[] _propertyNames; internal string[] PropertyNames { get { return _propertyNames; } set { _propertyNames = value; } } private TypeUsage[] _typeUsages; internal TypeUsage[] TypeUsages { get { return _typeUsages; } set { _typeUsages = value; } } private List_nestedRecordStateScratchpads = new List (); [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] internal RecordStateFactory Compile() { RecordStateFactory[] nestedRecordStateFactories = new RecordStateFactory[_nestedRecordStateScratchpads.Count]; for (int i = 0; i < nestedRecordStateFactories.Length; i++) { nestedRecordStateFactories[i] = _nestedRecordStateScratchpads[i].Compile(); } RecordStateFactory result = (RecordStateFactory)Activator.CreateInstance(typeof(RecordStateFactory), new object[] { this.StateSlotNumber, this.ColumnCount, nestedRecordStateFactories, this.DataRecordInfo, this.GatherData, this.PropertyNames, this.TypeUsages }); return result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Linq; using System.Linq.Expressions; using System.Runtime.CompilerServices; namespace System.Data.Common.Internal.Materialization { ////// Used in the Translator to aggregate information about a (nested) record /// state. After the translator visits the columnMaps, it will compile /// the recordState(s) which produces an immutable RecordStateFactory that /// can be shared amongst many query instances. /// internal class RecordStateScratchpad { private int _stateSlotNumber; internal int StateSlotNumber { get { return _stateSlotNumber; } set { _stateSlotNumber = value; } } private int _columnCount; internal int ColumnCount { get { return _columnCount; } set { _columnCount = value; } } private DataRecordInfo _dataRecordInfo; internal DataRecordInfo DataRecordInfo { get { return _dataRecordInfo; } set { _dataRecordInfo = value; } } private Expression _gatherData; internal Expression GatherData { get { return _gatherData; } set { _gatherData = value; } } private string[] _propertyNames; internal string[] PropertyNames { get { return _propertyNames; } set { _propertyNames = value; } } private TypeUsage[] _typeUsages; internal TypeUsage[] TypeUsages { get { return _typeUsages; } set { _typeUsages = value; } } private List_nestedRecordStateScratchpads = new List (); [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] internal RecordStateFactory Compile() { RecordStateFactory[] nestedRecordStateFactories = new RecordStateFactory[_nestedRecordStateScratchpads.Count]; for (int i = 0; i < nestedRecordStateFactories.Length; i++) { nestedRecordStateFactories[i] = _nestedRecordStateScratchpads[i].Compile(); } RecordStateFactory result = (RecordStateFactory)Activator.CreateInstance(typeof(RecordStateFactory), new object[] { this.StateSlotNumber, this.ColumnCount, nestedRecordStateFactories, this.DataRecordInfo, this.GatherData, this.PropertyNames, this.TypeUsages }); return result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ListControlBuilder.cs
- ColumnHeaderConverter.cs
- FactoryGenerator.cs
- TrackingProfile.cs
- DesignTimeData.cs
- Int64Converter.cs
- CodeTypeDeclaration.cs
- FillRuleValidation.cs
- IndexerNameAttribute.cs
- JobInputBins.cs
- DynamicExpression.cs
- StringUtil.cs
- Bits.cs
- BindingListCollectionView.cs
- mactripleDES.cs
- InvokeProviderWrapper.cs
- SecurityDocument.cs
- DataExpression.cs
- Utilities.cs
- DependencyProperty.cs
- XmlIlTypeHelper.cs
- Renderer.cs
- HttpWriter.cs
- SystemUdpStatistics.cs
- ParallelTimeline.cs
- SqlConnectionHelper.cs
- Monitor.cs
- HtmlInputPassword.cs
- BCLDebug.cs
- PersonalizationProvider.cs
- HandleCollector.cs
- OutputScopeManager.cs
- LocatorBase.cs
- Primitive.cs
- FigureHelper.cs
- WebRequestModulesSection.cs
- ArithmeticException.cs
- GridView.cs
- FontFamily.cs
- SiteMapHierarchicalDataSourceView.cs
- DBCommandBuilder.cs
- ListViewGroup.cs
- MaskedTextBoxTextEditorDropDown.cs
- IISMapPath.cs
- GeometryValueSerializer.cs
- RC2.cs
- ProgressBarRenderer.cs
- SQLUtility.cs
- DrawingVisual.cs
- Point3DAnimationBase.cs
- ClientOptions.cs
- EntryIndex.cs
- ViewCellSlot.cs
- DefaultWorkflowTransactionService.cs
- GeneratedCodeAttribute.cs
- SrgsElementList.cs
- DivideByZeroException.cs
- ExpandSegmentCollection.cs
- SimpleMailWebEventProvider.cs
- RegexGroup.cs
- KernelTypeValidation.cs
- ColorInterpolationModeValidation.cs
- Drawing.cs
- SecurityDescriptor.cs
- Parsers.cs
- ContentWrapperAttribute.cs
- DeferredTextReference.cs
- StructuralType.cs
- PackagePart.cs
- NotificationContext.cs
- recordstatescratchpad.cs
- TransactionInterop.cs
- ShadowGlyph.cs
- GetImportFileNameRequest.cs
- SchemaCollectionCompiler.cs
- BitVec.cs
- SingleObjectCollection.cs
- DataGridViewTopRowAccessibleObject.cs
- TypeBuilder.cs
- BinaryHeap.cs
- StoreContentChangedEventArgs.cs
- DictionarySectionHandler.cs
- WebProxyScriptElement.cs
- ManagementBaseObject.cs
- XhtmlConformanceSection.cs
- ValueTypeFixupInfo.cs
- Rule.cs
- DynamicResourceExtension.cs
- TableLayoutPanelCellPosition.cs
- TransformCryptoHandle.cs
- XmlCustomFormatter.cs
- MetadataArtifactLoaderCompositeResource.cs
- FixedTextBuilder.cs
- SmtpException.cs
- PropertyCollection.cs
- SmiRecordBuffer.cs
- TextElementAutomationPeer.cs
- ObjectManager.cs
- TraceHandler.cs
- precedingsibling.cs