Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / QIL / QilName.cs / 1305376 / QilName.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Diagnostics; namespace System.Xml.Xsl.Qil { ////// View over a Qil name literal. /// ////// Don't construct QIL nodes directly; instead, use the internal class QilName : QilLiteral { private string local; private string uri; private string prefix; //----------------------------------------------- // Constructor //----------------------------------------------- ///QilFactory . ////// Construct a new node /// public QilName(QilNodeType nodeType, string local, string uri, string prefix) : base(nodeType, null) { LocalName = local; NamespaceUri = uri; Prefix = prefix; Value = this; } //----------------------------------------------- // QilName methods //----------------------------------------------- public string LocalName { get { return this.local; } set { this.local = value; } } public string NamespaceUri { get { return this.uri; } set { this.uri = value; } } public string Prefix { get { return this.prefix; } set { this.prefix = value; } } ////// Build the qualified name in the form prefix:local /// public string QualifiedName { get { if (this.prefix.Length == 0) { return this.local; } else { return this.prefix + ':' + this.local; } } } ////// Override GetHashCode() so that the QilName can be used as a key in the hashtable. /// ///Does not compare their prefixes (if any). public override int GetHashCode() { return this.local.GetHashCode(); } ////// Override Equals() so that the QilName can be used as a key in the hashtable. /// ///Does not compare their prefixes (if any). public override bool Equals(object other) { QilName name = other as QilName; if (name == null) return false; return this.local == name.local && this.uri == name.uri; } ////// Implement operator == to prevent exidental referential comarison /// ///Does not compare their prefixes (if any). public static bool operator ==(QilName a, QilName b) { if ((object)a == (object)b) { return true; } if ((object)a == null || (object)b == null) { return false; } return a.local == b.local && a.uri == b.uri; } ////// Implement operator != to prevent exidental referential comarison /// ///Does not compare their prefixes (if any). public static bool operator !=(QilName a, QilName b) { return !(a == b); } ////// Return the QilName in this format: "{namespace}prefix:local-name". /// If the namespace is empty, return the QilName in this truncated format: "local-name". /// If the prefix is empty, return the QilName in this truncated format: "{namespace}local-name". /// public override string ToString() { if (prefix.Length == 0) { if (uri.Length == 0) return local; return string.Concat("{", uri, "}", local); } return string.Concat("{", uri, "}", prefix, ":", local); } } } // 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
- DrawListViewSubItemEventArgs.cs
- X509Utils.cs
- CollaborationHelperFunctions.cs
- XPathAncestorQuery.cs
- XmlAttributeAttribute.cs
- PeerApplication.cs
- XmlArrayAttribute.cs
- Wildcard.cs
- DbParameterCollection.cs
- DataGridViewHitTestInfo.cs
- MarkupCompiler.cs
- ListDesigner.cs
- TdsParserSafeHandles.cs
- OrderingExpression.cs
- ParameterCollection.cs
- UpdateProgress.cs
- DesignerRegion.cs
- ISessionStateStore.cs
- ChameleonKey.cs
- ContentPlaceHolder.cs
- DeclarativeCatalogPart.cs
- Matrix3DConverter.cs
- ListDictionaryInternal.cs
- StorageEntityContainerMapping.cs
- StylusShape.cs
- StatusBarDrawItemEvent.cs
- PieceNameHelper.cs
- HandlerFactoryCache.cs
- BooleanKeyFrameCollection.cs
- TargetInvocationException.cs
- DataGrid.cs
- WindowsListView.cs
- SmiContext.cs
- EvidenceBase.cs
- DataGridViewImageColumn.cs
- MgmtResManager.cs
- ExecutionScope.cs
- SystemInformation.cs
- FormView.cs
- Canvas.cs
- SplitterDesigner.cs
- EnumerableRowCollectionExtensions.cs
- XmlSchemaExporter.cs
- WebServiceData.cs
- DataGridViewRowsRemovedEventArgs.cs
- X509CertificateCollection.cs
- EditorAttribute.cs
- GrammarBuilderPhrase.cs
- PathFigureCollection.cs
- ResXFileRef.cs
- DetailsViewPagerRow.cs
- XmlSchemaException.cs
- EntityDataSourceWrapper.cs
- ObjectQuery_EntitySqlExtensions.cs
- AuthenticationServiceManager.cs
- ApplicationServiceHelper.cs
- ZeroOpNode.cs
- TypeLibConverter.cs
- TransformationRules.cs
- Floater.cs
- PerformanceCounterLib.cs
- PlaceHolder.cs
- InstallerTypeAttribute.cs
- NumericPagerField.cs
- RequestQueue.cs
- RegexParser.cs
- ExecutionProperties.cs
- MailHeaderInfo.cs
- ThreadStateException.cs
- TrackingDataItemValue.cs
- COM2ComponentEditor.cs
- NumberFormatInfo.cs
- FamilyMap.cs
- UnsafeNativeMethods.cs
- ExceptionValidationRule.cs
- CompilationUnit.cs
- EmptyReadOnlyDictionaryInternal.cs
- HierarchicalDataBoundControl.cs
- TemplateBamlRecordReader.cs
- FixedTextContainer.cs
- XmlSchemaImporter.cs
- DBConcurrencyException.cs
- ClientBuildManagerCallback.cs
- AdRotator.cs
- EncodingNLS.cs
- InlineUIContainer.cs
- FragmentQueryKB.cs
- CommonGetThemePartSize.cs
- BamlCollectionHolder.cs
- FixedDocumentPaginator.cs
- StringAnimationUsingKeyFrames.cs
- hresults.cs
- WorkflowShape.cs
- PackageRelationshipSelector.cs
- WebServiceHandlerFactory.cs
- ColumnCollection.cs
- BaseCodePageEncoding.cs
- PagerSettings.cs
- DesigntimeLicenseContext.cs
- FunctionUpdateCommand.cs