%%
%% %CopyrightBegin%
%%
%% Copyright Ericsson AB 2010-2017. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%
%% %CopyrightEnd%
%%
%%
%% This file contains code that's included by encode/decode modules
%% generated by diameter_codegen.erl. This code used to do most of the
%% work, but now passes it off to module diameter_gen.
%%
%% encode_avps/3
encode_avps(Name, Vals, Opts) ->
diameter_gen:encode_avps(Name, Vals, Opts#{module => ?MODULE}).
%% decode_avps/2
decode_avps(Name, Recs, Opts) ->
diameter_gen:decode_avps(Name, Recs, Opts#{module => ?MODULE}).
%% avp/5
avp(T, Data, Name, Opts, Mod) ->
Mod:avp(T, Data, Name, Opts#{module := Mod}).
%% grouped_avp/4
grouped_avp(T, Name, Data, Opts) ->
diameter_gen:grouped_avp(T, Name, Data, Opts).
%% empty_group/2
empty_group(Name, Opts) ->
diameter_gen:empty_group(Name, Opts).
%% empty/2
empty(Name, Opts) ->
diameter_gen:empty(Name, Opts).