211
211
dets:open_file(Name, Args).
214
dets_filename(Name, Dir) when is_atom(Name) ->
215
dets_filename(atom_to_list(Name), Dir);
214
216
dets_filename(Name, Dir) ->
215
217
filename:join(dets_filename1(Dir), Name).
909
911
match(volatile, Name, Pattern, #state{ets = Ets}) ->
910
912
ets:match(Ets, {{Name,'_'},{Pattern,'_','_'}});
911
913
match(persistent, Name, Pattern, #state{dets = Dets}) ->
912
case dets_match(Dets, {{Name,'_'},{Pattern,'_','_'}}) of
914
error_msg("DETS (persistent) match failed for {~w,~w}: ~n~w",
915
[Name, Pattern, Reason]),
914
dets_match(Dets, {{Name,'_'},{Pattern,'_','_'}});
920
915
match(permanent, Name, Pattern, #state{dets = Dets}) ->
921
case dets_match(Dets, {{Name,'_'},{Pattern,'_','_'}}) of
923
error_msg("DETS (permanent) match failed for {~w,~w}: ~n~w",
924
[Name, Pattern, Reason]),
916
dets_match(Dets, {{Name,'_'},{Pattern,'_','_'}});
929
917
match(UnknownDb, Name, Pattern, _) ->
930
918
error_msg("Tried to match [~p,~p] from unknown db ~w",
931
919
[Name, Pattern, UnknownDb]),
934
922
lookup(volatile, Key, #state{ets = Ets}) ->
935
923
case ets:lookup(Ets, Key) of
936
[{_, Val}] -> {value, Val};
939
929
lookup(persistent, Key, #state{dets = Dets}) ->
940
930
case dets_lookup(Dets, Key) of
941
[{_, Val}] -> {value, Val};
944
error_msg("DETS lookup of ~w failed: ~n~w", [Key, Reason]),
947
936
lookup(permanent, Key, #state{dets = Dets}) ->