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
- MobileControlsSectionHandler.cs
- FileLoadException.cs
- Documentation.cs
- Exceptions.cs
- DbLambda.cs
- MimeMultiPart.cs
- SplashScreenNativeMethods.cs
- Base64Decoder.cs
- CaretElement.cs
- ListViewGroup.cs
- ActivityTypeDesigner.xaml.cs
- WebUtil.cs
- WorkflowTransactionService.cs
- VirtualPath.cs
- BinaryWriter.cs
- BaseAddressPrefixFilterElement.cs
- AppPool.cs
- RegexMatchCollection.cs
- SqlDataSourceStatusEventArgs.cs
- Sentence.cs
- ListViewDataItem.cs
- MailBnfHelper.cs
- Variable.cs
- WebUtil.cs
- ToolboxItemCollection.cs
- GeneratedView.cs
- GradientStopCollection.cs
- ShaderEffect.cs
- RectangleF.cs
- KeyedHashAlgorithm.cs
- FocusManager.cs
- HtmlTitle.cs
- WindowsSysHeader.cs
- FontUnitConverter.cs
- WindowsStatic.cs
- ButtonAutomationPeer.cs
- SignedInfo.cs
- EventItfInfo.cs
- Glyph.cs
- ReadOnlyKeyedCollection.cs
- ProviderCommandInfoUtils.cs
- TreeBuilder.cs
- TextChange.cs
- WebEncodingValidatorAttribute.cs
- ToolStripPanel.cs
- RuntimeResourceSet.cs
- SiteMapDataSource.cs
- AbsoluteQuery.cs
- JoinQueryOperator.cs
- COAUTHINFO.cs
- BindingManagerDataErrorEventArgs.cs
- ProxyManager.cs
- CloudCollection.cs
- TypeSystem.cs
- SmiMetaData.cs
- NamespaceInfo.cs
- OrthographicCamera.cs
- GridViewCommandEventArgs.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- RepeaterItemEventArgs.cs
- XmlElementAttributes.cs
- VirtualDirectoryMappingCollection.cs
- ActivityScheduledQuery.cs
- WhitespaceSignificantCollectionAttribute.cs
- KeyProperty.cs
- DataServiceClientException.cs
- PropertyStore.cs
- WriteLineDesigner.xaml.cs
- FontDifferentiator.cs
- MgmtConfigurationRecord.cs
- CodeMemberField.cs
- WebPartCatalogCloseVerb.cs
- EdmTypeAttribute.cs
- XmlTextWriter.cs
- CallbackWrapper.cs
- PerformanceCounterPermission.cs
- DrawingGroup.cs
- While.cs
- Point3D.cs
- DynamicResourceExtensionConverter.cs
- LZCodec.cs
- SkipStoryboardToFill.cs
- ThreadStateException.cs
- RegisteredArrayDeclaration.cs
- MemberDescriptor.cs
- ProtocolsConfiguration.cs
- CrossAppDomainChannel.cs
- PrintDocument.cs
- JoinElimination.cs
- SchemaNamespaceManager.cs
- DropTarget.cs
- ProcessThread.cs
- RuleValidation.cs
- BypassElement.cs
- ContainerCodeDomSerializer.cs
- DesignerSerializationOptionsAttribute.cs
- TransportContext.cs
- X509Certificate2Collection.cs
- UpDownBase.cs
- SortedList.cs