Current section
Files
Jump to
Current section
Files
src/erldb_lib.erl
-module(erldb_lib).
-export([
get_fields/1,
unzip_object/1
]).
is_loaded(Model) ->
case code:ensure_loaded(Model) of
{module, _} ->
true;
{error, _} ->
false
end.
get_fields(Model) ->
[ Y || {Z,[Y]} <- Model:module_info(attributes),
Z =:= field].
unzip_object(Object) ->
Model = element(1, Object),
is_loaded(Model),
Fields = get_fields(Model),
Res = lists:map(
fun({Field, Position, Type, Args}) ->
{Field, element(Position, Object), Type, Args}
end, Fields),
Res.