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
- CharacterBuffer.cs
- DataSourceXmlSerializationAttribute.cs
- BaseCAMarshaler.cs
- CodeNamespace.cs
- HttpValueCollection.cs
- Queue.cs
- ConfigurationStrings.cs
- ClusterRegistryConfigurationProvider.cs
- TableProviderWrapper.cs
- WebAdminConfigurationHelper.cs
- SortDescription.cs
- DBAsyncResult.cs
- SiteMapNodeCollection.cs
- VarInfo.cs
- MimeFormatExtensions.cs
- CreateUserWizardStep.cs
- RuleConditionDialog.cs
- PlatformCulture.cs
- AbsoluteQuery.cs
- SystemTcpStatistics.cs
- CodePropertyReferenceExpression.cs
- ProfileBuildProvider.cs
- DeploymentExceptionMapper.cs
- QilExpression.cs
- HelpEvent.cs
- ObjectItemCachedAssemblyLoader.cs
- LinkedList.cs
- OperandQuery.cs
- DataMemberListEditor.cs
- StylusCollection.cs
- MimePart.cs
- DockEditor.cs
- ResourceDescriptionAttribute.cs
- wmiprovider.cs
- AspCompat.cs
- SqlDataSourceDesigner.cs
- FunctionOverloadResolver.cs
- ExtractorMetadata.cs
- InputLangChangeRequestEvent.cs
- COM2PropertyDescriptor.cs
- HttpApplicationFactory.cs
- WinEventQueueItem.cs
- arabicshape.cs
- Content.cs
- InlineUIContainer.cs
- COM2PropertyDescriptor.cs
- LayoutUtils.cs
- HMACSHA256.cs
- PkcsMisc.cs
- TableLayoutCellPaintEventArgs.cs
- XmlCDATASection.cs
- TextTreeInsertUndoUnit.cs
- GenericTextProperties.cs
- StrongNameUtility.cs
- ThreadNeutralSemaphore.cs
- Encoding.cs
- BoundColumn.cs
- ConfigsHelper.cs
- MouseGesture.cs
- BaseTreeIterator.cs
- ClientTargetSection.cs
- WebDescriptionAttribute.cs
- XmlSchemaNotation.cs
- Set.cs
- DateTimeFormatInfoScanner.cs
- Token.cs
- XmlnsDictionary.cs
- WebPartHeaderCloseVerb.cs
- StrongNameKeyPair.cs
- CodeExpressionCollection.cs
- GeometryGroup.cs
- LoginViewDesigner.cs
- HitTestDrawingContextWalker.cs
- StringUtil.cs
- HttpClientCertificate.cs
- RealProxy.cs
- ObjectPersistData.cs
- SwitchAttribute.cs
- WebResourceUtil.cs
- SystemNetworkInterface.cs
- DataGridViewEditingControlShowingEventArgs.cs
- TypeConverterHelper.cs
- JapaneseCalendar.cs
- ACL.cs
- AdditionalEntityFunctions.cs
- Transform3D.cs
- ConfigXmlElement.cs
- RegexWorker.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- XmlRootAttribute.cs
- FixedDocument.cs
- DataServices.cs
- AtomMaterializerLog.cs
- XslVisitor.cs
- XslAstAnalyzer.cs
- StateWorkerRequest.cs
- CodePageEncoding.cs
- FormatException.cs
- SymbolUsageManager.cs
- IdnMapping.cs