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
- SafeNativeMethods.cs
- TreeNodeStyle.cs
- ViewgenGatekeeper.cs
- FaultImportOptions.cs
- ExpressionConverter.cs
- ObjectSpanRewriter.cs
- DataSysAttribute.cs
- DocumentationServerProtocol.cs
- StoreAnnotationsMap.cs
- WsdlBuildProvider.cs
- AttachInfo.cs
- SolidColorBrush.cs
- Package.cs
- AddingNewEventArgs.cs
- MethodInfo.cs
- SafeCryptoHandles.cs
- DESCryptoServiceProvider.cs
- DateTime.cs
- Vector3DAnimationBase.cs
- PolyBezierSegment.cs
- ISAPIRuntime.cs
- FileLogRecord.cs
- ObjectStorage.cs
- KeyPullup.cs
- WebRequestModuleElementCollection.cs
- ErrorProvider.cs
- StrokeCollectionDefaultValueFactory.cs
- CompressionTransform.cs
- LoginAutoFormat.cs
- PropertyPathConverter.cs
- ParameterSubsegment.cs
- ListSortDescriptionCollection.cs
- Annotation.cs
- ViewRendering.cs
- StdValidatorsAndConverters.cs
- QuotedStringWriteStateInfo.cs
- RegexStringValidator.cs
- mda.cs
- FontSizeConverter.cs
- DecoderReplacementFallback.cs
- ProxyHwnd.cs
- Mapping.cs
- RegexWriter.cs
- XsdValidatingReader.cs
- WebPartDisplayModeCollection.cs
- Utils.cs
- GroupItem.cs
- EntityViewGenerationAttribute.cs
- XmlSchemaIdentityConstraint.cs
- TableColumn.cs
- DrawingCollection.cs
- SEHException.cs
- WebPartConnectionsCancelVerb.cs
- WebPartEditorOkVerb.cs
- IPAddressCollection.cs
- uribuilder.cs
- DataGridColumnHeadersPresenter.cs
- SafeSecurityHandles.cs
- PropertyHelper.cs
- IndexedString.cs
- AcceleratedTokenAuthenticator.cs
- UTF8Encoding.cs
- Container.cs
- ellipse.cs
- XamlRtfConverter.cs
- ThreadAttributes.cs
- NonClientArea.cs
- Light.cs
- DataReaderContainer.cs
- DateTimeOffset.cs
- MetadataUtilsSmi.cs
- ValueUnavailableException.cs
- BrowserCapabilitiesFactory.cs
- StringFormat.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- ProvidersHelper.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- DesignerObjectListAdapter.cs
- Evaluator.cs
- EmptyEnumerable.cs
- StyleSheet.cs
- DefaultCompensation.cs
- DynamicValueConverter.cs
- HGlobalSafeHandle.cs
- loginstatus.cs
- CompiledQueryCacheEntry.cs
- LineServicesRun.cs
- NotFiniteNumberException.cs
- RadioButtonBaseAdapter.cs
- DbModificationCommandTree.cs
- FixedHyperLink.cs
- DocumentXPathNavigator.cs
- MultiView.cs
- LinqMaximalSubtreeNominator.cs
- GacUtil.cs
- CustomValidator.cs
- CommonGetThemePartSize.cs
- EqualityComparer.cs
- CallId.cs
- ResXResourceSet.cs