Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / Microsoft / Scripting / Actions / CallSiteHelpers.cs / 1305376 / CallSiteHelpers.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.Reflection; namespace System.Runtime.CompilerServices { ////// Class that contains helper methods for DLR CallSites. /// public static class CallSiteHelpers { private static Type _knownNonDynamicMethodType = typeof(object).GetMethod("ToString").GetType(); ////// Checks if a /// The inputis internally used by DLR and should not /// be displayed on the language code's stack. /// /// /// True if the input [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")] public static bool IsInternalFrame(MethodBase mb) { //All the dynamic methods created for DLR rules have a special name. //We also check if the method has a different type than the known //non-static method. If it does, it is a dynamic method. //This could be improved if the CLR provides a way to attach some information //to the dynamic method we create, like CustomAttributes. if (mb.Name == "CallSite.Target" && mb.GetType() != _knownNonDynamicMethodType) { return true; } //Filter out the helper methods. if (mb.DeclaringType == typeof(System.Dynamic.UpdateDelegates)) { return true; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. /* **************************************************************************** * * 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.Reflection; namespace System.Runtime.CompilerServices { ///is internally used by DLR and should not /// be displayed on the language code's stack. Otherwise, false. /// /// Class that contains helper methods for DLR CallSites. /// public static class CallSiteHelpers { private static Type _knownNonDynamicMethodType = typeof(object).GetMethod("ToString").GetType(); ////// Checks if a /// The inputis internally used by DLR and should not /// be displayed on the language code's stack. /// /// /// True if the input [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")] public static bool IsInternalFrame(MethodBase mb) { //All the dynamic methods created for DLR rules have a special name. //We also check if the method has a different type than the known //non-static method. If it does, it is a dynamic method. //This could be improved if the CLR provides a way to attach some information //to the dynamic method we create, like CustomAttributes. if (mb.Name == "CallSite.Target" && mb.GetType() != _knownNonDynamicMethodType) { return true; } //Filter out the helper methods. if (mb.DeclaringType == typeof(System.Dynamic.UpdateDelegates)) { return true; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.is internally used by DLR and should not /// be displayed on the language code's stack. Otherwise, false. ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BaseParagraph.cs
- ConstNode.cs
- RichTextBoxContextMenu.cs
- documentsequencetextview.cs
- EventToken.cs
- ScriptComponentDescriptor.cs
- RoutedPropertyChangedEventArgs.cs
- SqlDelegatedTransaction.cs
- GenericUriParser.cs
- WebPartTracker.cs
- StructuredTypeEmitter.cs
- TextFormatterImp.cs
- StandardCommands.cs
- RuntimeConfigLKG.cs
- Point.cs
- jithelpers.cs
- Int64Converter.cs
- HtmlTable.cs
- VectorAnimationUsingKeyFrames.cs
- NavigateEvent.cs
- InheritanceContextChangedEventManager.cs
- XhtmlTextWriter.cs
- CopyOfAction.cs
- _SSPIWrapper.cs
- ConnectionManagementElement.cs
- AndCondition.cs
- DynamicPropertyHolder.cs
- WebPartMovingEventArgs.cs
- GridItemCollection.cs
- CultureInfo.cs
- ExecutedRoutedEventArgs.cs
- AccessText.cs
- Qualifier.cs
- SharedDp.cs
- ApplyTemplatesAction.cs
- TextBoxView.cs
- ItemCheckEvent.cs
- COSERVERINFO.cs
- VectorAnimationBase.cs
- ComponentResourceKey.cs
- DataMember.cs
- ZipIOExtraFieldElement.cs
- TreeNodeEventArgs.cs
- IssuedTokenServiceCredential.cs
- AppDomainProtocolHandler.cs
- ShortcutKeysEditor.cs
- WebPartExportVerb.cs
- PropertyInformationCollection.cs
- DataGridHyperlinkColumn.cs
- MultiView.cs
- Journaling.cs
- CodeVariableReferenceExpression.cs
- HttpServerUtilityWrapper.cs
- XmlSerializer.cs
- InheritanceContextChangedEventManager.cs
- ErrorRuntimeConfig.cs
- COM2EnumConverter.cs
- DescendentsWalker.cs
- HttpRequestCacheValidator.cs
- OutputCacheProfile.cs
- SelectionPattern.cs
- ReadOnlyDataSource.cs
- ProjectionPruner.cs
- XamlTreeBuilder.cs
- DoubleAnimationUsingPath.cs
- CompositeCollectionView.cs
- WindowsGraphics.cs
- VideoDrawing.cs
- AsymmetricCryptoHandle.cs
- TrackingMemoryStreamFactory.cs
- SqlGenericUtil.cs
- ISO2022Encoding.cs
- MenuAutomationPeer.cs
- CodeSubDirectoriesCollection.cs
- _NegoState.cs
- SHA1CryptoServiceProvider.cs
- TypeKeyValue.cs
- DataTable.cs
- MenuItemStyleCollectionEditor.cs
- RequestStatusBarUpdateEventArgs.cs
- AliasedExpr.cs
- Vector3DAnimationBase.cs
- ListSortDescription.cs
- ButtonPopupAdapter.cs
- ThreadAbortException.cs
- ClientConvert.cs
- Deflater.cs
- SqlDataSourceSelectingEventArgs.cs
- HatchBrush.cs
- DesignTableCollection.cs
- DataPager.cs
- Trustee.cs
- IDispatchConstantAttribute.cs
- ConfigurationPropertyAttribute.cs
- SqlUserDefinedAggregateAttribute.cs
- TemplateManager.cs
- WebPartsSection.cs
- PageSettings.cs
- XmlSchemaGroupRef.cs
- ProcessHostServerConfig.cs