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
- WebPartChrome.cs
- HttpCachePolicy.cs
- ResolveNameEventArgs.cs
- AutomationPeer.cs
- SafePEFileHandle.cs
- XmlDocumentFragment.cs
- RegisteredHiddenField.cs
- ModelItemImpl.cs
- PageBreakRecord.cs
- DataGridViewSelectedRowCollection.cs
- CharUnicodeInfo.cs
- XPathNodeList.cs
- ObjectSet.cs
- TextClipboardData.cs
- DataContractSerializerServiceBehavior.cs
- DoubleAnimationClockResource.cs
- StaticSiteMapProvider.cs
- ResourceDescriptionAttribute.cs
- SystemNetworkInterface.cs
- AssemblyFilter.cs
- Column.cs
- AssemblyName.cs
- DataServiceRequestException.cs
- ScriptManagerProxy.cs
- SecurityElement.cs
- ColumnReorderedEventArgs.cs
- DrawListViewColumnHeaderEventArgs.cs
- AlternationConverter.cs
- SqlDependencyUtils.cs
- ObjectDataSource.cs
- WindowsTooltip.cs
- DocumentGridPage.cs
- OutputCacheProfile.cs
- BinaryWriter.cs
- SqlDependencyUtils.cs
- NamespaceEmitter.cs
- XmlCodeExporter.cs
- RuntimeVariablesExpression.cs
- DockPanel.cs
- DisposableCollectionWrapper.cs
- InvalidateEvent.cs
- ScriptingJsonSerializationSection.cs
- EdgeProfileValidation.cs
- SoapException.cs
- SuppressIldasmAttribute.cs
- MsmqMessage.cs
- CroppedBitmap.cs
- AutomationEvent.cs
- PTUtility.cs
- Control.cs
- InkCanvasSelection.cs
- NullableFloatSumAggregationOperator.cs
- RecordsAffectedEventArgs.cs
- ServerProtocol.cs
- GroupQuery.cs
- OrderedEnumerableRowCollection.cs
- SqlTopReducer.cs
- MSAAWinEventWrap.cs
- TraceHandlerErrorFormatter.cs
- _HTTPDateParse.cs
- InfoCardPolicy.cs
- XamlStackWriter.cs
- RegionData.cs
- TextSearch.cs
- ErrorWebPart.cs
- VisualBasicExpressionConverter.cs
- HttpHeaderCollection.cs
- CommandEventArgs.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- DmlSqlGenerator.cs
- BamlLocalizableResource.cs
- Camera.cs
- CaseStatement.cs
- SoapHelper.cs
- ResourceWriter.cs
- ScopedKnownTypes.cs
- SelectionItemPattern.cs
- QilReplaceVisitor.cs
- ServiceReference.cs
- DataGridItem.cs
- TypeLibConverter.cs
- GridViewRowCollection.cs
- FamilyMap.cs
- NullableIntAverageAggregationOperator.cs
- HandlerFactoryWrapper.cs
- ThicknessConverter.cs
- SingleKeyFrameCollection.cs
- BinarySecretSecurityToken.cs
- ClonableStack.cs
- HebrewCalendar.cs
- GenericWebPart.cs
- BindingBase.cs
- Table.cs
- DBCommandBuilder.cs
- ConstraintConverter.cs
- RegistryDataKey.cs
- EntityConnectionStringBuilder.cs
- FixedSOMTable.cs
- DesignerDataTableBase.cs
- ValidateNames.cs