Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / XmlUtils / System / Xml / Xsl / Runtime / EarlyBoundInfo.cs / 1 / 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
- PrintPreviewControl.cs
- DesignTimeVisibleAttribute.cs
- AbandonedMutexException.cs
- ListBindingHelper.cs
- StylusPointPropertyUnit.cs
- ObjectIDGenerator.cs
- DataServiceSaveChangesEventArgs.cs
- OAVariantLib.cs
- EditorPartChrome.cs
- SafeFileMapViewHandle.cs
- BamlLocalizer.cs
- ContextProperty.cs
- FormsAuthenticationConfiguration.cs
- TextOptions.cs
- NotifyCollectionChangedEventArgs.cs
- GenericTextProperties.cs
- FrameworkElementAutomationPeer.cs
- SQLBytes.cs
- DoubleAnimationUsingPath.cs
- LayoutEditorPart.cs
- ScrollItemPattern.cs
- Semaphore.cs
- SqlMethods.cs
- ICspAsymmetricAlgorithm.cs
- ValidationUtility.cs
- Table.cs
- IChannel.cs
- remotingproxy.cs
- CalendarAutoFormat.cs
- PropertyDescriptorCollection.cs
- XmlChoiceIdentifierAttribute.cs
- DataSourceCacheDurationConverter.cs
- StorageEndPropertyMapping.cs
- ScalarRestriction.cs
- ColorKeyFrameCollection.cs
- TypeUtil.cs
- CqlGenerator.cs
- RTLAwareMessageBox.cs
- SuppressMessageAttribute.cs
- LinearGradientBrush.cs
- AudioStateChangedEventArgs.cs
- FileLevelControlBuilderAttribute.cs
- TraceContextRecord.cs
- LinkButton.cs
- StrongNameMembershipCondition.cs
- TransactionScope.cs
- SqlDataAdapter.cs
- FileAuthorizationModule.cs
- XmlEntityReference.cs
- smtpconnection.cs
- RoleService.cs
- ResXDataNode.cs
- StringSorter.cs
- ScrollEvent.cs
- StrokeCollectionDefaultValueFactory.cs
- ExchangeUtilities.cs
- BindingSourceDesigner.cs
- ChooseAction.cs
- ProcessHostConfigUtils.cs
- SoapAttributeAttribute.cs
- SrgsOneOf.cs
- LineGeometry.cs
- Triplet.cs
- SrgsElementList.cs
- RIPEMD160Managed.cs
- VideoDrawing.cs
- ProtocolImporter.cs
- AffineTransform3D.cs
- MarkedHighlightComponent.cs
- HMACSHA256.cs
- ReflectEventDescriptor.cs
- ContentPlaceHolderDesigner.cs
- AsymmetricKeyExchangeFormatter.cs
- SQlBooleanStorage.cs
- ProfileServiceManager.cs
- FlowLayout.cs
- EpmAttributeNameBuilder.cs
- ScaleTransform3D.cs
- WebPartConnectionsConnectVerb.cs
- SQLBinary.cs
- SwitchAttribute.cs
- XamlVector3DCollectionSerializer.cs
- SqlInfoMessageEvent.cs
- FormViewPagerRow.cs
- TypeForwardedToAttribute.cs
- ContainsSearchOperator.cs
- SqlCacheDependency.cs
- WebConfigurationHostFileChange.cs
- SkewTransform.cs
- DataBindingHandlerAttribute.cs
- TypefaceMap.cs
- GeometryModel3D.cs
- ObfuscationAttribute.cs
- NameValuePermission.cs
- RepeaterItemCollection.cs
- ConfigXmlCDataSection.cs
- PeerCustomResolverBindingElement.cs
- SiteMapNode.cs
- MatrixAnimationBase.cs
- OleDbParameterCollection.cs