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
- ContainerControl.cs
- SymDocumentType.cs
- ObjectStateFormatter.cs
- TransformerConfigurationWizardBase.cs
- BoolLiteral.cs
- DataGridLengthConverter.cs
- ManagementQuery.cs
- Pair.cs
- ComplexObject.cs
- TileBrush.cs
- XmlAnyAttributeAttribute.cs
- MTConfigUtil.cs
- SqlDataSourceEnumerator.cs
- controlskin.cs
- ZipIOFileItemStream.cs
- SelectionListComponentEditor.cs
- DataGridViewToolTip.cs
- XDRSchema.cs
- UnsafeNativeMethods.cs
- ByteStream.cs
- EnlistmentTraceIdentifier.cs
- DrawTreeNodeEventArgs.cs
- PanelDesigner.cs
- HttpInputStream.cs
- TemplateBindingExpression.cs
- AssemblyName.cs
- DataGridViewCell.cs
- SqlClientMetaDataCollectionNames.cs
- CreateUserErrorEventArgs.cs
- SymbolMethod.cs
- Misc.cs
- Activator.cs
- WhitespaceSignificantCollectionAttribute.cs
- PointConverter.cs
- Material.cs
- CompressStream.cs
- XmlRawWriterWrapper.cs
- BuildResultCache.cs
- SqlTypesSchemaImporter.cs
- IntSumAggregationOperator.cs
- ResourceWriter.cs
- OletxTransactionHeader.cs
- EditorPartCollection.cs
- DesignerDataConnection.cs
- MobileControlPersister.cs
- EnvelopedPkcs7.cs
- ContainerParaClient.cs
- RecipientInfo.cs
- SynchronizedPool.cs
- BindingElementCollection.cs
- WebPartMenuStyle.cs
- PtsPage.cs
- Semaphore.cs
- HttpContextWrapper.cs
- WindowsAuthenticationModule.cs
- ProxyWebPart.cs
- IPEndPoint.cs
- DataGridColumnCollectionEditor.cs
- AdPostCacheSubstitution.cs
- ReflectEventDescriptor.cs
- PackageDigitalSignatureManager.cs
- ExponentialEase.cs
- DoubleUtil.cs
- FileCodeGroup.cs
- DataGridViewCheckBoxColumn.cs
- WindowsGraphics2.cs
- PipelineModuleStepContainer.cs
- IDispatchConstantAttribute.cs
- OutputCacheSettingsSection.cs
- TextParagraphCache.cs
- SystemFonts.cs
- embossbitmapeffect.cs
- RtfControls.cs
- AsyncResult.cs
- BindingManagerDataErrorEventArgs.cs
- CommandHelper.cs
- ReferenceEqualityComparer.cs
- SqlBinder.cs
- CollectionViewProxy.cs
- XmlWellformedWriterHelpers.cs
- WindowsServiceElement.cs
- BitmapEffectInputData.cs
- HostingPreferredMapPath.cs
- DataPagerFieldCommandEventArgs.cs
- tibetanshape.cs
- HttpInputStream.cs
- SqlBulkCopyColumnMappingCollection.cs
- Helpers.cs
- MultipleViewProviderWrapper.cs
- AttachedAnnotationChangedEventArgs.cs
- HeaderedContentControl.cs
- CodeStatementCollection.cs
- ValidatorUtils.cs
- TextEditorDragDrop.cs
- HttpContext.cs
- IdentityManager.cs
- PropertyAccessVisitor.cs
- UnitySerializationHolder.cs
- FamilyTypeface.cs
- basecomparevalidator.cs