aboutsummaryrefslogtreecommitdiff
path: root/tools/xmpp_codec.spec
diff options
context:
space:
mode:
Diffstat (limited to 'tools/xmpp_codec.spec')
-rw-r--r--tools/xmpp_codec.spec12
1 files changed, 11 insertions, 1 deletions
diff --git a/tools/xmpp_codec.spec b/tools/xmpp_codec.spec
index aa18899c9..7b5ca5e66 100644
--- a/tools/xmpp_codec.spec
+++ b/tools/xmpp_codec.spec
@@ -3215,7 +3215,9 @@
default = <<"">>},
#attr{name = <<"xml:lang">>, label = '$lang',
default = <<"">>},
- #attr{name = <<"version">>, default = <<"">>},
+ #attr{name = <<"version">>,
+ dec = {dec_version, []},
+ enc = {enc_version, []}},
#attr{name = <<"id">>, default = <<"">>}]}).
-xml(bob_data,
@@ -3479,6 +3481,14 @@ enc_host_port({Host, Port}) ->
enc_host_port(Addr) ->
enc_ip(Addr).
+-spec dec_version(_) -> {non_neg_integer(), non_neg_integer()}.
+dec_version(S) ->
+ [Major, Minor] = binary:split(S, <<$.>>),
+ {binary_to_integer(Major), binary_to_integer(Minor)}.
+
+enc_version({Maj, Min}) ->
+ <<(integer_to_binary(Maj))/binary, $., (integer_to_binary(Min))/binary>>.
+
%% Local Variables:
%% mode: erlang
%% End: