Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- AddDataControlFieldDialog.cs
- EnterpriseServicesHelper.cs
- HostingEnvironmentException.cs
- ContextInformation.cs
- CultureTable.cs
- SafeNativeMemoryHandle.cs
- KeyToListMap.cs
- AssertFilter.cs
- ListViewHitTestInfo.cs
- WmlMobileTextWriter.cs
- BaseTemplateParser.cs
- TransformProviderWrapper.cs
- DesignerView.xaml.cs
- ToolBar.cs
- XmlCodeExporter.cs
- SHA256.cs
- ChannelSinkStacks.cs
- TabletDevice.cs
- BamlLocalizabilityResolver.cs
- WebPartAuthorizationEventArgs.cs
- Tokenizer.cs
- FileDataSourceCache.cs
- DependencyPropertyValueSerializer.cs
- QilGenerator.cs
- StatusBarPanelClickEvent.cs
- MenuAdapter.cs
- HttpProtocolImporter.cs
- UseLicense.cs
- TextBoxBase.cs
- CqlIdentifiers.cs
- MonthCalendarDesigner.cs
- BitmapEncoder.cs
- InstanceStoreQueryResult.cs
- ErrorItem.cs
- DataTemplateKey.cs
- TransformValueSerializer.cs
- LinkedDataMemberFieldEditor.cs
- OdbcFactory.cs
- ConfigurationSettings.cs
- AccessDataSource.cs
- DrawingAttributeSerializer.cs
- TraceProvider.cs
- DescriptionCreator.cs
- FullTextLine.cs
- ColorBuilder.cs
- XmlSchemaSet.cs
- ProcessHost.cs
- RequestCacheValidator.cs
- NativeRecognizer.cs
- HtmlContainerControl.cs
- BindingManagerDataErrorEventArgs.cs
- SettingsSavedEventArgs.cs
- LineBreak.cs
- ItemChangedEventArgs.cs
- ChineseLunisolarCalendar.cs
- PhysicalAddress.cs
- SqlInternalConnection.cs
- TableParaClient.cs
- SqlAggregateChecker.cs
- OleDbException.cs
- WriteTimeStream.cs
- Pair.cs
- CompatibleIComparer.cs
- TableChangeProcessor.cs
- WebControlAdapter.cs
- Vertex.cs
- TextServicesDisplayAttribute.cs
- DefaultAsyncDataDispatcher.cs
- EtwTrace.cs
- Automation.cs
- ZipIOExtraFieldPaddingElement.cs
- EntityDataSourceSelectedEventArgs.cs
- InternalPermissions.cs
- WebPartDisplayMode.cs
- ProxyAssemblyNotLoadedException.cs
- SuppressIldasmAttribute.cs
- DataMemberFieldEditor.cs
- ResourceSet.cs
- PathFigureCollectionValueSerializer.cs
- UnsafePeerToPeerMethods.cs
- HitTestParameters3D.cs
- CapabilitiesAssignment.cs
- ValidationSummary.cs
- GraphicsContext.cs
- RestClientProxyHandler.cs
- ExtensionSurface.cs
- SapiRecoInterop.cs
- AspProxy.cs
- _Events.cs
- PointConverter.cs
- StrongName.cs
- DisposableCollectionWrapper.cs
- XmlSchemas.cs
- DataMisalignedException.cs
- RemotingAttributes.cs
- PageBreakRecord.cs
- QuaternionRotation3D.cs
- DelegatedStream.cs
- ComplusEndpointConfigContainer.cs
- RegisteredScript.cs