Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / Runtime / EarlyBoundInfo.cs / 1305376 / EarlyBoundInfo.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System.Diagnostics; using System.Reflection; namespace System.Xml.Xsl.Runtime { ////// This class contains information about early bound function objects. /// internal sealed class EarlyBoundInfo { private string namespaceUri; // Namespace Uri mapped to these early bound functions private ConstructorInfo constrInfo; // Constructor for the early bound function object public EarlyBoundInfo(string namespaceUri, Type ebType) { Debug.Assert(namespaceUri != null && ebType != null); // Get the default constructor this.namespaceUri = namespaceUri; this.constrInfo = ebType.GetConstructor(Type.EmptyTypes); Debug.Assert(this.constrInfo != null, "The early bound object type " + ebType.FullName + " must have a public default constructor"); } ////// Get the Namespace Uri mapped to these early bound functions. /// public string NamespaceUri { get { return this.namespaceUri; } } ////// Return the Clr Type of the early bound object. /// public Type EarlyBoundType { get { return this.constrInfo.DeclaringType; } } ////// Create an instance of the early bound object. /// public object CreateObject() { return this.constrInfo.Invoke(new object[] {}); } ////// Override Equals method so that EarlyBoundInfo to implement value comparison. /// public override bool Equals(object obj) { EarlyBoundInfo info = obj as EarlyBoundInfo; if (info == null) return false; return this.namespaceUri == info.namespaceUri && this.constrInfo == info.constrInfo; } ////// Override GetHashCode since Equals is overriden. /// public override int GetHashCode() { return this.namespaceUri.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System.Diagnostics; using System.Reflection; namespace System.Xml.Xsl.Runtime { ////// This class contains information about early bound function objects. /// internal sealed class EarlyBoundInfo { private string namespaceUri; // Namespace Uri mapped to these early bound functions private ConstructorInfo constrInfo; // Constructor for the early bound function object public EarlyBoundInfo(string namespaceUri, Type ebType) { Debug.Assert(namespaceUri != null && ebType != null); // Get the default constructor this.namespaceUri = namespaceUri; this.constrInfo = ebType.GetConstructor(Type.EmptyTypes); Debug.Assert(this.constrInfo != null, "The early bound object type " + ebType.FullName + " must have a public default constructor"); } ////// Get the Namespace Uri mapped to these early bound functions. /// public string NamespaceUri { get { return this.namespaceUri; } } ////// Return the Clr Type of the early bound object. /// public Type EarlyBoundType { get { return this.constrInfo.DeclaringType; } } ////// Create an instance of the early bound object. /// public object CreateObject() { return this.constrInfo.Invoke(new object[] {}); } ////// Override Equals method so that EarlyBoundInfo to implement value comparison. /// public override bool Equals(object obj) { EarlyBoundInfo info = obj as EarlyBoundInfo; if (info == null) return false; return this.namespaceUri == info.namespaceUri && this.constrInfo == info.constrInfo; } ////// Override GetHashCode since Equals is overriden. /// public override int GetHashCode() { return this.namespaceUri.GetHashCode(); } } } // 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
- TableLayoutSettings.cs
- Keywords.cs
- TaskFormBase.cs
- AssemblyBuilder.cs
- BamlReader.cs
- CroppedBitmap.cs
- StackSpiller.Bindings.cs
- AutomationEvent.cs
- ServiceHost.cs
- OdbcReferenceCollection.cs
- WindowsRichEditRange.cs
- DesignerAttribute.cs
- NumberSubstitution.cs
- LinqDataSourceStatusEventArgs.cs
- elementinformation.cs
- MimeTypeMapper.cs
- LogSwitch.cs
- DependencySource.cs
- SupportingTokenBindingElement.cs
- PresentationTraceSources.cs
- CornerRadiusConverter.cs
- FileVersionInfo.cs
- FontFamilyIdentifier.cs
- WebPartHelpVerb.cs
- ReferenceEqualityComparer.cs
- ZipIOExtraFieldZip64Element.cs
- EntryIndex.cs
- TimeoutConverter.cs
- GuidConverter.cs
- ApplicationSettingsBase.cs
- DockPatternIdentifiers.cs
- CodeBinaryOperatorExpression.cs
- XmlSchemaInferenceException.cs
- WsatStrings.cs
- CodeExpressionCollection.cs
- DataKeyCollection.cs
- ClipboardData.cs
- RectValueSerializer.cs
- UICuesEvent.cs
- Vector3D.cs
- XmlSchemaParticle.cs
- DeploymentExceptionMapper.cs
- LogEntry.cs
- AccessDataSourceView.cs
- ParagraphVisual.cs
- DesignerActionService.cs
- FreezableOperations.cs
- EdmEntityTypeAttribute.cs
- StatusBar.cs
- ObjectResult.cs
- ColorTypeConverter.cs
- SecurityResources.cs
- DataServiceHost.cs
- XmlReader.cs
- BooleanStorage.cs
- FileRecordSequence.cs
- ReferencedCollectionType.cs
- RSAPKCS1SignatureDeformatter.cs
- AttributeSetAction.cs
- SiteIdentityPermission.cs
- EmptyEnumerator.cs
- PreservationFileWriter.cs
- XhtmlBasicImageAdapter.cs
- XmlElement.cs
- UpdateCommand.cs
- StringAnimationUsingKeyFrames.cs
- SiteIdentityPermission.cs
- LostFocusEventManager.cs
- Membership.cs
- WebPartActionVerb.cs
- ReadOnlyCollectionBuilder.cs
- WpfSharedBamlSchemaContext.cs
- StateInitializationDesigner.cs
- HtmlEncodedRawTextWriter.cs
- ContractInferenceHelper.cs
- DoubleConverter.cs
- DCSafeHandle.cs
- ZipIOExtraFieldZip64Element.cs
- HyperLinkColumn.cs
- Accessible.cs
- RoutedEventHandlerInfo.cs
- OleDbErrorCollection.cs
- TagMapInfo.cs
- Config.cs
- StatusBarPanelClickEvent.cs
- BoundPropertyEntry.cs
- SoapProtocolReflector.cs
- Atom10FeedFormatter.cs
- ExpressionVisitor.cs
- PrePrepareMethodAttribute.cs
- HebrewNumber.cs
- XmlUrlResolver.cs
- Vector3DCollectionConverter.cs
- RepeaterItemCollection.cs
- StateMachineWorkflow.cs
- AppDomainFactory.cs
- ActivationArguments.cs
- DataGridViewCellConverter.cs
- TextBoxRenderer.cs
- BeginEvent.cs