Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ WriteEndAttributeAsync_SepcialAtt()

async Task System.Xml.XmlWellFormedWriter.WriteEndAttributeAsync_SepcialAtt ( )
inlineprivate

Definition at line 3602 of file XmlWellFormedWriter.cs.

3603 {
3604 _ = 19;
3605 try
3606 {
3607 switch (_specAttr)
3608 {
3609 case SpecialAttribute.DefaultXmlns:
3610 {
3613 {
3614 if (_rawWriter == null)
3615 {
3616 await _writer.WriteStartAttributeAsync(string.Empty, "xmlns", "http://www.w3.org/2000/xmlns/").ConfigureAwait(continueOnCapturedContext: false);
3619 }
3621 {
3623 }
3624 else
3625 {
3629 }
3630 }
3631 _curDeclPrefix = null;
3632 break;
3633 }
3634 case SpecialAttribute.PrefixedXmlns:
3635 {
3637 if (stringValue.Length == 0)
3638 {
3640 }
3641 if (stringValue == "http://www.w3.org/2000/xmlns/" || (stringValue == "http://www.w3.org/XML/1998/namespace" && _curDeclPrefix != "xml"))
3642 {
3644 }
3646 {
3647 if (_rawWriter == null)
3648 {
3649 await _writer.WriteStartAttributeAsync("xmlns", _curDeclPrefix, "http://www.w3.org/2000/xmlns/").ConfigureAwait(continueOnCapturedContext: false);
3652 }
3654 {
3656 }
3657 else
3658 {
3662 }
3663 }
3664 _curDeclPrefix = null;
3665 break;
3666 }
3667 case SpecialAttribute.XmlSpace:
3668 {
3671 if (stringValue == "default")
3672 {
3673 _elemScopeStack[_elemTop].xmlSpace = XmlSpace.Default;
3674 }
3675 else
3676 {
3677 if (!(stringValue == "preserve"))
3678 {
3680 }
3681 _elemScopeStack[_elemTop].xmlSpace = XmlSpace.Preserve;
3682 }
3683 await _writer.WriteStartAttributeAsync("xml", "space", "http://www.w3.org/XML/1998/namespace").ConfigureAwait(continueOnCapturedContext: false);
3686 break;
3687 }
3688 case SpecialAttribute.XmlLang:
3689 {
3692 await _writer.WriteStartAttributeAsync("xml", "lang", "http://www.w3.org/XML/1998/namespace").ConfigureAwait(continueOnCapturedContext: false);
3695 break;
3696 }
3697 }
3698 _specAttr = SpecialAttribute.No;
3700 }
3701 catch
3702 {
3703 _currentState = State.Error;
3704 throw;
3705 }
3706 }
static string Xml_InvalidXmlSpace
Definition SR.cs:92
static string Xml_PrefixForEmptyNs
Definition SR.cs:286
static string Xml_CanNotBindToReservedNamespace
Definition SR.cs:108
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
Definition SR.cs:7
virtual bool SupportsNamespaceDeclarationInChunks
virtual Task WriteEndNamespaceDeclarationAsync()
virtual Task WriteStartNamespaceDeclarationAsync(string prefix)
virtual Task WriteNamespaceDeclarationAsync(string prefix, string ns)
bool PushNamespaceExplicit(string prefix, string ns)
virtual Task WriteStartAttributeAsync(string? prefix, string localName, string? ns)
Definition XmlWriter.cs:628
virtual Task WriteEndAttributeAsync()
Definition XmlWriter.cs:633

References System.Xml.XmlWellFormedWriter._attrValueCache, System.Xml.XmlWellFormedWriter._curDeclPrefix, System.Xml.XmlWellFormedWriter._currentState, System.Xml.XmlWellFormedWriter._elemScopeStack, System.Xml.XmlWellFormedWriter._elemTop, System.Xml.XmlWellFormedWriter._rawWriter, System.Xml.XmlWellFormedWriter._specAttr, System.Xml.XmlWellFormedWriter._writer, System.Xml.ArgumentException, System.Xml.XmlWellFormedWriter.AttributeValueCache.Clear(), System.Xml.Dictionary, System.SR.Format(), System.Xml.XmlWellFormedWriter.PushNamespaceExplicit(), System.Xml.XmlWellFormedWriter.AttributeValueCache.ReplayAsync(), System.Xml.XmlWellFormedWriter.AttributeValueCache.StringValue, System.Xml.XmlRawWriter.SupportsNamespaceDeclarationInChunks, System.Xml.XmlWellFormedWriter.AttributeValueCache.Trim(), System.Xml.XmlWriter.WriteEndAttributeAsync(), System.Xml.XmlRawWriter.WriteEndNamespaceDeclarationAsync(), System.Xml.XmlRawWriter.WriteNamespaceDeclarationAsync(), System.Xml.XmlWriter.WriteStartAttributeAsync(), System.Xml.XmlRawWriter.WriteStartNamespaceDeclarationAsync(), System.SR.Xml_CanNotBindToReservedNamespace, System.SR.Xml_InvalidXmlSpace, System.SR.Xml_PrefixForEmptyNs, System.Xml.XmlWellFormedWriter.ElementScope.xmlLang, and System.Xml.XmlWellFormedWriter.ElementScope.xmlSpace.

Referenced by System.Xml.XmlWellFormedWriter.WriteEndAttributeAsync_NoAdvance().