Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Linq / Parallel / QueryOperators / Options / OrderingQueryOperator.cs / 1305376 / OrderingQueryOperator.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // OrderingQueryOperator.cs // //[....] // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections.Generic; using System.Threading; namespace System.Linq.Parallel { ////// Represents operators AsOrdered and AsUnordered. In the current implementation, it /// simply turns on preservation globally in the query. /// ///internal sealed class OrderingQueryOperator : QueryOperator { // Turns on order (AsOrdered) or turns off order (AsUnordered) private bool m_orderOn; private QueryOperator m_child; private OrdinalIndexState m_ordinalIndexState; public OrderingQueryOperator(QueryOperator child, bool orderOn) : base(orderOn, child.SpecifiedQuerySettings) { m_child = child; m_ordinalIndexState = m_child.OrdinalIndexState; m_orderOn = orderOn; } internal override QueryResults Open(QuerySettings settings, bool preferStriping) { return m_child.Open(settings, preferStriping); } internal override IEnumerator GetEnumerator(ParallelMergeOptions? mergeOptions, bool suppressOrderPreservation) { ScanQueryOperator childAsScan = m_child as ScanQueryOperator ; if (childAsScan != null) { return childAsScan.Data.GetEnumerator(); } return base.GetEnumerator(mergeOptions, suppressOrderPreservation); } //---------------------------------------------------------------------------------------- // Returns an enumerable that represents the query executing sequentially. // internal override IEnumerable AsSequentialQuery(CancellationToken token) { return m_child.AsSequentialQuery(token); } //--------------------------------------------------------------------------------------- // Whether this operator performs a premature merge. // internal override bool LimitsParallelism { get { return m_child.LimitsParallelism; } } internal override OrdinalIndexState OrdinalIndexState { get { return m_ordinalIndexState; } } } } // 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
- XPathNavigatorReader.cs
- WmiEventSink.cs
- CookieParameter.cs
- ManifestSignatureInformation.cs
- RoutedEventHandlerInfo.cs
- MarkupWriter.cs
- VirtualPathProvider.cs
- CommonObjectSecurity.cs
- HtmlWindow.cs
- UpdateException.cs
- RewritingProcessor.cs
- EntitySetBaseCollection.cs
- SizeAnimationClockResource.cs
- TCPClient.cs
- XmlILTrace.cs
- MetadataCollection.cs
- WorkflowQueuingService.cs
- FormViewPagerRow.cs
- MimeWriter.cs
- PersonalizationDictionary.cs
- SqlBulkCopyColumnMapping.cs
- GuidTagList.cs
- LookupBindingPropertiesAttribute.cs
- BroadcastEventHelper.cs
- Polyline.cs
- NominalTypeEliminator.cs
- PolicyLevel.cs
- CmsInterop.cs
- VirtualPathUtility.cs
- _ShellExpression.cs
- HtmlGenericControl.cs
- CreatingCookieEventArgs.cs
- TrustManagerMoreInformation.cs
- LoginName.cs
- UpdateProgress.cs
- JpegBitmapDecoder.cs
- SmtpTransport.cs
- PeerDefaultCustomResolverClient.cs
- DataGridViewCellEventArgs.cs
- COM2TypeInfoProcessor.cs
- DbQueryCommandTree.cs
- SafeNativeMethodsCLR.cs
- WindowsBrush.cs
- DataRow.cs
- DayRenderEvent.cs
- ResourceExpressionEditorSheet.cs
- WorkflowApplicationAbortedException.cs
- CollectionChange.cs
- WebBrowserBase.cs
- tibetanshape.cs
- FtpWebResponse.cs
- WebPartAuthorizationEventArgs.cs
- LogWriteRestartAreaAsyncResult.cs
- XhtmlConformanceSection.cs
- EntityWithKeyStrategy.cs
- Math.cs
- BitmapCodecInfoInternal.cs
- XmlSchemaGroup.cs
- TypeReference.cs
- RadioButton.cs
- RuleInfoComparer.cs
- LambdaExpression.cs
- PersistenceException.cs
- Stylesheet.cs
- PrimitiveXmlSerializers.cs
- OdbcConnectionStringbuilder.cs
- JumpItem.cs
- EventSetterHandlerConverter.cs
- SoundPlayer.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- BitSet.cs
- CompensationToken.cs
- LinkUtilities.cs
- ThicknessAnimation.cs
- KeyFrames.cs
- TableDetailsCollection.cs
- initElementDictionary.cs
- PassportAuthenticationEventArgs.cs
- Bezier.cs
- _Connection.cs
- X509ChainPolicy.cs
- BufferBuilder.cs
- XmlSerializerObjectSerializer.cs
- HMACSHA256.cs
- ObjectDataSourceView.cs
- ColumnMapTranslator.cs
- SingleObjectCollection.cs
- XpsDigitalSignature.cs
- GcSettings.cs
- ALinqExpressionVisitor.cs
- SqlInternalConnectionSmi.cs
- ApplicationHost.cs
- ScriptingAuthenticationServiceSection.cs
- RequiredFieldValidator.cs
- QilReference.cs
- FixedSOMImage.cs
- PerformanceCounterPermissionEntryCollection.cs
- EntityDataSourceEntityTypeFilterItem.cs
- JsonClassDataContract.cs
- PaintEvent.cs