Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / Microsoft / Scripting / Utils / Helpers.cs / 1305376 / Helpers.cs
/* **************************************************************************** * * Copyright (c) Microsoft Corporation. * * This source code is subject to terms and conditions of the Microsoft Public License. A * copy of the license can be found in the License.html file at the root of this distribution. If * you cannot locate the Microsoft Public License, please send an email to * dlr@microsoft.com. By using this source code in any fashion, you are agreeing to be bound * by the terms of the Microsoft Public License. * * You must not remove this notice, or any other, from this software. * * * ***************************************************************************/ using System.Collections.Generic; using System.Linq.Expressions; namespace System.Dynamic.Utils { // Miscellaneous helpers that don't belong anywhere else internal static class Helpers { internal static T CommonNode(T first, T second, Func parent) where T : class { var cmp = EqualityComparer .Default; if (cmp.Equals(first, second)) { return first; } var set = new Set (cmp); for (T t = first; t != null; t = parent(t)) { set.Add(t); } for (T t = second; t != null; t = parent(t)) { if (set.Contains(t)) { return t; } } return null; } internal static void IncrementCount (T key, Dictionary dict) { int count; dict.TryGetValue(key, out count); dict[key] = count + 1; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextTreeTextElementNode.cs
- AttributeUsageAttribute.cs
- RecognitionEventArgs.cs
- VisualTarget.cs
- SqlMethodCallConverter.cs
- ButtonFlatAdapter.cs
- UserControlAutomationPeer.cs
- HtmlTableRow.cs
- PrimitiveType.cs
- CroppedBitmap.cs
- MultipartContentParser.cs
- ScaleTransform3D.cs
- MouseWheelEventArgs.cs
- TextRunProperties.cs
- PageBuildProvider.cs
- KnownColorTable.cs
- FaultContractAttribute.cs
- AttachedPropertiesService.cs
- Single.cs
- DataObjectCopyingEventArgs.cs
- ProviderUtil.cs
- MetafileHeader.cs
- IWorkflowDebuggerService.cs
- SchemaElementLookUpTable.cs
- TextBoxLine.cs
- ClientType.cs
- ClientBase.cs
- ClientScriptManagerWrapper.cs
- FormViewUpdateEventArgs.cs
- PropertyIdentifier.cs
- ReferencedCollectionType.cs
- _ListenerRequestStream.cs
- ReliableDuplexSessionChannel.cs
- BinHexEncoder.cs
- Rotation3DAnimationBase.cs
- Axis.cs
- Schema.cs
- ValueTable.cs
- DateTimeConverter.cs
- LinkArea.cs
- GeneralTransform3D.cs
- Token.cs
- PathTooLongException.cs
- BitmapMetadataEnumerator.cs
- PageWrapper.cs
- ScalarType.cs
- Codec.cs
- ToolStripItemEventArgs.cs
- XmlSerializerFactory.cs
- FileClassifier.cs
- ValidationEventArgs.cs
- PathFigure.cs
- ConfigurationSection.cs
- localization.cs
- FormViewUpdateEventArgs.cs
- RegexGroup.cs
- GridViewDeletedEventArgs.cs
- DataGridViewCellStyleChangedEventArgs.cs
- DiscoveryClientReferences.cs
- DataControlFieldsEditor.cs
- DataSourceNameHandler.cs
- Queue.cs
- XmlIncludeAttribute.cs
- CategoryGridEntry.cs
- NetNamedPipeBindingCollectionElement.cs
- AttachedProperty.cs
- NativeRecognizer.cs
- HighlightVisual.cs
- InfoCardBinaryReader.cs
- ResizeBehavior.cs
- TableRow.cs
- TranslateTransform.cs
- SqlNodeTypeOperators.cs
- GacUtil.cs
- FormatSettings.cs
- ConstNode.cs
- XPathAncestorQuery.cs
- GraphicsState.cs
- WebConfigurationHost.cs
- GenerateHelper.cs
- EdmError.cs
- SmiEventStream.cs
- ProfileSettingsCollection.cs
- WrapPanel.cs
- XmlDataSource.cs
- ProcessThreadDesigner.cs
- XmlAttributeOverrides.cs
- ConstructorExpr.cs
- CodeMemberProperty.cs
- FrameworkElement.cs
- ApplicationManager.cs
- Automation.cs
- ToggleButtonAutomationPeer.cs
- WebSysDescriptionAttribute.cs
- WSFederationHttpBindingElement.cs
- FormViewModeEventArgs.cs
- UserControl.cs
- SystemIPv4InterfaceProperties.cs
- CreatingCookieEventArgs.cs
- TextSearch.cs