Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / Microsoft / Scripting / Actions / DeleteMemberBinder.cs / 1305376 / DeleteMemberBinder.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.Dynamic.Utils; namespace System.Dynamic { ////// Represents the dynamic delete member operation at the call site, providing the binding semantic and the details about the operation. /// public abstract class DeleteMemberBinder : DynamicMetaObjectBinder { private readonly string _name; private readonly bool _ignoreCase; ////// Initializes a new instance of the /// The name of the member to delete. /// true if the name should be matched ignoring case; false otherwise. protected DeleteMemberBinder(string name, bool ignoreCase) { ContractUtils.RequiresNotNull(name, "name"); _name = name; _ignoreCase = ignoreCase; } ///. /// /// Gets the name of the member to delete. /// public string Name { get { return _name; } } ////// Gets the value indicating if the string comparison should ignore the case of the member name. /// public bool IgnoreCase { get { return _ignoreCase; } } ////// The result type of the operation. /// public override sealed Type ReturnType { get { return typeof(void); } } ////// Performs the binding of the dynamic delete member operation if the target dynamic object cannot bind. /// /// The target of the dynamic delete member operation. ///The public DynamicMetaObject FallbackDeleteMember(DynamicMetaObject target) { return FallbackDeleteMember(target, null); } ///representing the result of the binding. /// When overridden in the derived class, performs the binding of the dynamic delete member operation if the target dynamic object cannot bind. /// /// The target of the dynamic delete member operation. /// The binding result to use if binding fails, or null. ///The public abstract DynamicMetaObject FallbackDeleteMember(DynamicMetaObject target, DynamicMetaObject errorSuggestion); ///representing the result of the binding. /// Performs the binding of the dynamic delete member operation. /// /// The target of the dynamic delete member operation. /// An array of arguments of the dynamic delete member operation. ///The public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) { ContractUtils.RequiresNotNull(target, "target"); ContractUtils.Requires(args == null || args.Length == 0); return target.BindDeleteMember(this); } // this is a standard DynamicMetaObjectBinder internal override sealed bool IsStandardBinder { get { return true; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.representing the result of the binding.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ReferenceConverter.cs
- EntitySet.cs
- XPathPatternParser.cs
- DataGridViewComboBoxCell.cs
- WinInetCache.cs
- TableAutomationPeer.cs
- EventData.cs
- StateDesigner.Layouts.cs
- CompilerScopeManager.cs
- XmlHierarchyData.cs
- TypedDataSourceCodeGenerator.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- AccessViolationException.cs
- InfoCardHelper.cs
- AtomServiceDocumentSerializer.cs
- DropSource.cs
- RC2CryptoServiceProvider.cs
- BlockingCollection.cs
- SimpleType.cs
- JavascriptCallbackMessageInspector.cs
- DataGridViewDataConnection.cs
- GraphicsState.cs
- FloaterParaClient.cs
- SpellerError.cs
- BuildProvider.cs
- RepeatInfo.cs
- MsmqHostedTransportConfiguration.cs
- IApplicationTrustManager.cs
- AssertSection.cs
- CompositeActivityCodeGenerator.cs
- RedirectionProxy.cs
- ControlTemplate.cs
- ReplyAdapterChannelListener.cs
- AsymmetricAlgorithm.cs
- templategroup.cs
- TargetConverter.cs
- DataControlField.cs
- DotExpr.cs
- ContractHandle.cs
- XmlSchemaElement.cs
- GridEntry.cs
- MgmtConfigurationRecord.cs
- QilStrConcat.cs
- UriTemplateDispatchFormatter.cs
- XmlSchemaSimpleTypeRestriction.cs
- BindingExpressionUncommonField.cs
- DecimalFormatter.cs
- DocumentViewerAutomationPeer.cs
- Codec.cs
- EmptyStringExpandableObjectConverter.cs
- Domain.cs
- PaperSource.cs
- BaseTemplateBuildProvider.cs
- Tokenizer.cs
- ColorMap.cs
- PackageFilter.cs
- _NtlmClient.cs
- ZoneIdentityPermission.cs
- DataGridItemEventArgs.cs
- IdentifierService.cs
- GlyphRunDrawing.cs
- WorkflowInstance.cs
- GestureRecognitionResult.cs
- DataDocumentXPathNavigator.cs
- EnumType.cs
- FormConverter.cs
- ContextBase.cs
- FamilyMapCollection.cs
- ErrorRuntimeConfig.cs
- DockAndAnchorLayout.cs
- ClientRuntimeConfig.cs
- ItemContainerProviderWrapper.cs
- ModifyActivitiesPropertyDescriptor.cs
- ClrProviderManifest.cs
- ContextInformation.cs
- ClientCultureInfo.cs
- KeyToListMap.cs
- BamlTreeUpdater.cs
- LateBoundBitmapDecoder.cs
- SQLDouble.cs
- ParserHooks.cs
- WebPartConnectVerb.cs
- SystemMulticastIPAddressInformation.cs
- SuppressMessageAttribute.cs
- DataColumnCollection.cs
- Array.cs
- ModuleBuilderData.cs
- TypeListConverter.cs
- SrgsRule.cs
- ValidationVisibilityAttribute.cs
- SecUtil.cs
- Container.cs
- PropertyEmitter.cs
- LineInfo.cs
- SQLInt32Storage.cs
- PieceNameHelper.cs
- linebase.cs
- PageAsyncTask.cs
- CommandConverter.cs
- NetMsmqBinding.cs