structs.go
changeset 8 30a7752cf8f7
parent 7 4f0f66f9a441
child 10 f38b0ee7b1c1
equal deleted inserted replaced
7:4f0f66f9a441 8:30a7752cf8f7
    64 	Lang string `xml:"attr"`
    64 	Lang string `xml:"attr"`
    65 	Text string `xml:"chardata"`
    65 	Text string `xml:"chardata"`
    66 }
    66 }
    67 var _ xml.Marshaler = &errText{}
    67 var _ xml.Marshaler = &errText{}
    68 
    68 
       
    69 type Features struct {
       
    70 	Starttls starttls
       
    71 	Mechanisms mechs
       
    72 }
       
    73 
       
    74 type starttls struct {
       
    75 	required *string
       
    76 }
       
    77 
       
    78 type mechs struct {
       
    79 	Mechanism []string
       
    80 }
       
    81 
    69 type Unrecognized struct {
    82 type Unrecognized struct {
    70 	XMLName xml.Name
    83 	XMLName xml.Name
    71 }
    84 }
       
    85 var _ fmt.Stringer = &Unrecognized{}
    72 
    86 
    73 func (jid *JID) String() string {
    87 func (jid *JID) String() string {
    74 	result := jid.Domain
    88 	result := jid.Domain
    75 	if jid.Node != nil {
    89 	if jid.Node != nil {
    76 		result = *jid.Node + "@" + result
    90 		result = *jid.Node + "@" + result
   169 		io.WriteString(w, `="`)
   183 		io.WriteString(w, `="`)
   170 		xml.Escape(w, []byte(value))
   184 		xml.Escape(w, []byte(value))
   171 		io.WriteString(w, `"`)
   185 		io.WriteString(w, `"`)
   172 	}
   186 	}
   173 }
   187 }
       
   188 
       
   189 func (u *Unrecognized) String() string {
       
   190 	return fmt.Sprintf("unrecognized{%s %s}", u.XMLName.Space,
       
   191 		u.XMLName.Local)
       
   192 }