Software /
code /
prosody
Comparison
util/stanza.lua @ 7758:2b305ec8c146
Merge 0.10->trunk
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 02 Dec 2016 11:13:05 +0100 |
parent | 7256:9fbb9fbf7e52 |
parent | 7750:e58524240b30 |
child | 8382:e5d00bf4a4d5 |
comparison
equal
deleted
inserted
replaced
7747:0e442402cebc | 7758:2b305ec8c146 |
---|---|
12 local t_concat = table.concat; | 12 local t_concat = table.concat; |
13 local s_format = string.format; | 13 local s_format = string.format; |
14 local s_match = string.match; | 14 local s_match = string.match; |
15 local tostring = tostring; | 15 local tostring = tostring; |
16 local setmetatable = setmetatable; | 16 local setmetatable = setmetatable; |
17 local getmetatable = getmetatable; | |
17 local pairs = pairs; | 18 local pairs = pairs; |
18 local ipairs = ipairs; | 19 local ipairs = ipairs; |
19 local type = type; | 20 local type = type; |
20 local s_gsub = string.gsub; | 21 local s_gsub = string.gsub; |
21 local s_sub = string.sub; | 22 local s_sub = string.sub; |
41 stanza_mt.__index = stanza_mt; | 42 stanza_mt.__index = stanza_mt; |
42 | 43 |
43 local function new_stanza(name, attr, namespaces) | 44 local function new_stanza(name, attr, namespaces) |
44 local stanza = { name = name, attr = attr or {}, namespaces = namespaces, tags = {} }; | 45 local stanza = { name = name, attr = attr or {}, namespaces = namespaces, tags = {} }; |
45 return setmetatable(stanza, stanza_mt); | 46 return setmetatable(stanza, stanza_mt); |
47 end | |
48 | |
49 local function is_stanza(s) | |
50 return getmetatable(s) == stanza_mt; | |
46 end | 51 end |
47 | 52 |
48 function stanza_mt:query(xmlns) | 53 function stanza_mt:query(xmlns) |
49 return self:tag("query", { xmlns = xmlns }); | 54 return self:tag("query", { xmlns = xmlns }); |
50 end | 55 end |
420 end | 425 end |
421 | 426 |
422 return { | 427 return { |
423 stanza_mt = stanza_mt; | 428 stanza_mt = stanza_mt; |
424 stanza = new_stanza; | 429 stanza = new_stanza; |
430 is_stanza = is_stanza; | |
425 new_id = new_id; | 431 new_id = new_id; |
426 preserialize = preserialize; | 432 preserialize = preserialize; |
427 deserialize = deserialize; | 433 deserialize = deserialize; |
428 clone = clone; | 434 clone = clone; |
429 message = message; | 435 message = message; |