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
- JsonDeserializer.cs
- CqlParserHelpers.cs
- SqlIdentifier.cs
- QueryPageSettingsEventArgs.cs
- mediaclock.cs
- SetStoryboardSpeedRatio.cs
- DoubleLinkListEnumerator.cs
- XmlSchemaDatatype.cs
- InstanceCompleteException.cs
- SiteMapDataSourceView.cs
- ClassValidator.cs
- StylusSystemGestureEventArgs.cs
- WebPageTraceListener.cs
- XmlWrappingReader.cs
- BindingWorker.cs
- DescriptionAttribute.cs
- OledbConnectionStringbuilder.cs
- GroupStyle.cs
- InvalidCastException.cs
- ImageKeyConverter.cs
- EditingCommands.cs
- FormsAuthenticationTicket.cs
- CorePropertiesFilter.cs
- WaveHeader.cs
- LinkLabel.cs
- RectAnimationUsingKeyFrames.cs
- Win32SafeHandles.cs
- OnOperation.cs
- XmlNode.cs
- CodeAccessSecurityEngine.cs
- DecimalMinMaxAggregationOperator.cs
- UnhandledExceptionEventArgs.cs
- StylusPointDescription.cs
- XmlSchemaNotation.cs
- DbModificationClause.cs
- ProfileBuildProvider.cs
- AccessDataSource.cs
- FixedTextPointer.cs
- ProcessInfo.cs
- EntityContainerRelationshipSet.cs
- DbInsertCommandTree.cs
- KeyValueConfigurationCollection.cs
- CodeGeneratorOptions.cs
- ContextProperty.cs
- PropertyDescriptor.cs
- RequestBringIntoViewEventArgs.cs
- NetTcpBindingElement.cs
- CmsUtils.cs
- Double.cs
- SmiEventStream.cs
- TCPListener.cs
- ButtonAutomationPeer.cs
- TableCell.cs
- HtmlElementEventArgs.cs
- PinProtectionHelper.cs
- EmbeddedMailObjectsCollection.cs
- DropShadowEffect.cs
- XmlSerializationReader.cs
- milexports.cs
- DisplayMemberTemplateSelector.cs
- HttpResponseBase.cs
- PermissionSet.cs
- ControlBindingsCollection.cs
- SqlBuilder.cs
- XPathScanner.cs
- ObjectAssociationEndMapping.cs
- EnumValAlphaComparer.cs
- WebPartsPersonalizationAuthorization.cs
- HttpHostedTransportConfiguration.cs
- GroupBoxAutomationPeer.cs
- TraceContextRecord.cs
- OdbcConnectionPoolProviderInfo.cs
- List.cs
- RenderCapability.cs
- GridPatternIdentifiers.cs
- DataGridViewCellPaintingEventArgs.cs
- ConfigurationFileMap.cs
- RoutedCommand.cs
- QilFactory.cs
- Compiler.cs
- AutoGeneratedField.cs
- TranslateTransform3D.cs
- TdsParserHelperClasses.cs
- TypedTableBase.cs
- LogManagementAsyncResult.cs
- DependencyProperty.cs
- securestring.cs
- DateTimeConverter2.cs
- ItemChangedEventArgs.cs
- ItemList.cs
- OneToOneMappingSerializer.cs
- Operator.cs
- ApplicationProxyInternal.cs
- DateTimeOffsetStorage.cs
- CodeTypeDeclaration.cs
- FontDialog.cs
- FormView.cs
- LateBoundBitmapDecoder.cs
- odbcmetadatacolumnnames.cs
- PageOutputQuality.cs