summaryrefslogtreecommitdiff
path: root/lib/asn1
diff options
context:
space:
mode:
Diffstat (limited to 'lib/asn1')
-rw-r--r--lib/asn1/src/asn1_db.erl11
-rw-r--r--lib/asn1/src/asn1ct.erl17
2 files changed, 12 insertions, 16 deletions
diff --git a/lib/asn1/src/asn1_db.erl b/lib/asn1/src/asn1_db.erl
index 7486fa2db9..28c1fc4563 100644
--- a/lib/asn1/src/asn1_db.erl
+++ b/lib/asn1/src/asn1_db.erl
@@ -82,11 +82,11 @@ loop(#state{parent = Parent, monitor = MRef, table = Table,
includes = Includes} = State) ->
receive
{set, Mod, K2, V} ->
- [{_, Modtab}] = ets:lookup(Table, Mod),
+ Modtab = ets:lookup_element(Table, Mod, 2),
ets:insert(Modtab, {K2, V}),
loop(State);
{set, Mod, Kvs} ->
- [{_, Modtab}] = ets:lookup(Table, Mod),
+ Modtab = ets:lookup_element(Table, Mod, 2),
ets:insert(Modtab, Kvs),
loop(State);
{From, {get, Mod, K2}} ->
@@ -105,7 +105,7 @@ loop(#state{parent = Parent, monitor = MRef, table = Table,
end,
loop(State);
{save, OutFile, Mod} ->
- [{_,Mtab}] = ets:lookup(Table, Mod),
+ Mtab = ets:lookup_element(Table, Mod, 2),
TempFile = OutFile ++ ".#temp",
ok = ets:tab2file(Mtab, TempFile),
ok = file:rename(TempFile, OutFile),
@@ -146,10 +146,7 @@ get_table(Table, Mod, Includes) ->
end.
lookup(Tab, K) ->
- case ets:lookup(Tab, K) of
- [] -> undefined;
- [{K,V}] -> V
- end.
+ ets:lookup_element(Tab, K, 2, undefined).
info(EruleMaps) ->
{asn1ct:vsn(),EruleMaps}.
diff --git a/lib/asn1/src/asn1ct.erl b/lib/asn1/src/asn1ct.erl
index de10339c41..3ab83f6262 100644
--- a/lib/asn1/src/asn1ct.erl
+++ b/lib/asn1/src/asn1ct.erl
@@ -20,6 +20,7 @@
%%
%%
-module(asn1ct).
+-feature(maybe_expr, enable).
%% Compile Time functions for ASN.1 (e.g ASN.1 compiler).
@@ -2233,15 +2234,13 @@ maybe_rename_function2(Thing,Name,Suffix)
%% generated_functions_member/4 checks on both Name and Pattern if
%% the element exists in L
generated_functions_member(M,Name,L,Pattern) ->
- case generated_functions_member(M,Name,L) of
- true ->
- L2 = generated_functions_filter(M,Name,L),
- case lists:keysearch(Pattern,3,L2) of
- {value,_} ->
- true;
- _ -> false
- end;
- _ -> false
+ maybe
+ true ?= generated_functions_member(M,Name,L),
+ L2 = generated_functions_filter(M,Name,L),
+ {value,_} ?= lists:keysearch(Pattern,3,L2),
+ true
+ else
+ false -> false
end.
generated_functions_member(_M,Name,[{Name,_,_}|_]) ->