aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/src/sys_core_dsetel.erl
diff options
context:
space:
mode:
authorBjörn-Egil Dahlberg <[email protected]>2014-01-13 18:05:00 +0100
committerBjörn-Egil Dahlberg <[email protected]>2014-01-29 11:08:48 +0100
commit5b4b6c9b6bd1cf258841004f2e11bb2a82ebfe24 (patch)
tree380181058a169355343424f64e0feccda64f60ec /lib/compiler/src/sys_core_dsetel.erl
parent1f6c5e88f4f387cc27c9affbdf1ceaae7cfdcfd3 (diff)
downloadotp-5b4b6c9b6bd1cf258841004f2e11bb2a82ebfe24.tar.gz
otp-5b4b6c9b6bd1cf258841004f2e11bb2a82ebfe24.tar.bz2
otp-5b4b6c9b6bd1cf258841004f2e11bb2a82ebfe24.zip
compiler: Squash #c_map_pair_*{} to #c_map_pair{}
Simplify compiler internals and parsing of core format.
Diffstat (limited to 'lib/compiler/src/sys_core_dsetel.erl')
-rw-r--r--lib/compiler/src/sys_core_dsetel.erl10
1 files changed, 3 insertions, 7 deletions
diff --git a/lib/compiler/src/sys_core_dsetel.erl b/lib/compiler/src/sys_core_dsetel.erl
index f921429409..60d83763f8 100644
--- a/lib/compiler/src/sys_core_dsetel.erl
+++ b/lib/compiler/src/sys_core_dsetel.erl
@@ -105,14 +105,10 @@ visit(Env0, #c_tuple{es=Es0}=R) ->
visit(Env0, #c_map{es=Es0}=R) ->
{Es1,Env1} = visit_list(Env0, Es0),
{R#c_map{es=Es1}, Env1};
-visit(Env0, #c_map_pair_assoc{key=K0,val=V0}=R) ->
+visit(Env0, #c_map_pair{key=K0,val=V0}=R) ->
{K,Env1} = visit(Env0, K0),
{V,Env2} = visit(Env1, V0),
- {R#c_map_pair_assoc{key=K,val=V}, Env2};
-visit(Env0, #c_map_pair_exact{key=K0,val=V0}=R) ->
- {K,Env1} = visit(Env0, K0),
- {V,Env2} = visit(Env1, V0),
- {R#c_map_pair_exact{key=K,val=V}, Env2};
+ {R#c_map_pair{key=K,val=V}, Env2};
visit(Env0, #c_cons{hd=H0,tl=T0}=R) ->
{H1,Env1} = visit(Env0, H0),
{T1,Env2} = visit(Env1, T0),
@@ -225,7 +221,7 @@ visit_pat(Env0, #c_tuple{es=Es}, Vs) ->
visit_pats(Es, Env0, Vs);
visit_pat(Env0, #c_map{es=Es}, Vs) ->
visit_pats(Es, Env0, Vs);
-visit_pat(Env0, #c_map_pair_exact{key=V,val=K}, Vs0) ->
+visit_pat(Env0, #c_map_pair{op=#c_literal{val=exact},key=V,val=K}, Vs0) ->
{Vs1, Env1} = visit_pat(Env0, V, Vs0),
visit_pat(Env1, K, Vs1);
visit_pat(Env0, #c_cons{hd=H,tl=T}, Vs0) ->