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
- XmlSchemaSimpleContent.cs
- SoapAttributes.cs
- WebCategoryAttribute.cs
- MethodExpr.cs
- HMACSHA1.cs
- MouseGesture.cs
- DbProviderSpecificTypePropertyAttribute.cs
- ScriptReferenceEventArgs.cs
- FigureParaClient.cs
- List.cs
- CodeTypeMemberCollection.cs
- Grid.cs
- RemotingException.cs
- TraceHelpers.cs
- CacheSection.cs
- Set.cs
- FlowDocumentScrollViewer.cs
- ButtonBase.cs
- BoolExpressionVisitors.cs
- GeometryCombineModeValidation.cs
- WpfPayload.cs
- RelationshipDetailsRow.cs
- DataSvcMapFile.cs
- Substitution.cs
- _TLSstream.cs
- SafeProcessHandle.cs
- DataViewListener.cs
- ProtectedConfigurationProviderCollection.cs
- ConstraintStruct.cs
- GCHandleCookieTable.cs
- TypeConverters.cs
- CodeMethodInvokeExpression.cs
- GeneralTransformCollection.cs
- FixUpCollection.cs
- PeerCredentialElement.cs
- MethodSignatureGenerator.cs
- FileDialogCustomPlacesCollection.cs
- Delay.cs
- XmlSubtreeReader.cs
- XPathEmptyIterator.cs
- FileLoadException.cs
- PagedDataSource.cs
- LineInfo.cs
- Qualifier.cs
- IsolationInterop.cs
- AnimationStorage.cs
- Speller.cs
- PreservationFileReader.cs
- VisualTransition.cs
- OutArgumentConverter.cs
- MarginsConverter.cs
- SettingsPropertyIsReadOnlyException.cs
- KeyGestureConverter.cs
- log.cs
- sitestring.cs
- Color.cs
- PersonalizableAttribute.cs
- SaveFileDialog.cs
- PartitionedStreamMerger.cs
- AspNetCompatibilityRequirementsMode.cs
- AnnouncementEndpointElement.cs
- RPIdentityRequirement.cs
- Emitter.cs
- SHA512.cs
- Menu.cs
- IdleTimeoutMonitor.cs
- ToolBarPanel.cs
- SystemIPAddressInformation.cs
- EvidenceTypeDescriptor.cs
- XmlBuffer.cs
- HttpWebRequest.cs
- RouteParameter.cs
- EventlogProvider.cs
- DocumentPageView.cs
- ReverseComparer.cs
- ISAPIApplicationHost.cs
- AppDomain.cs
- Array.cs
- WorkItem.cs
- WizardStepBase.cs
- DescendentsWalker.cs
- WorkflowFileItem.cs
- MemberDomainMap.cs
- InvokeBase.cs
- _ContextAwareResult.cs
- ComponentEvent.cs
- SqlDataSourceConnectionPanel.cs
- SiteMapNodeCollection.cs
- ScrollContentPresenter.cs
- DLinqTableProvider.cs
- LicenseException.cs
- CatalogZone.cs
- QueryContinueDragEvent.cs
- EventLogPermissionAttribute.cs
- Expressions.cs
- RenderingBiasValidation.cs
- PublisherMembershipCondition.cs
- EventSetterHandlerConverter.cs
- WebException.cs
- Window.cs