aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/src/shell.erl
diff options
context:
space:
mode:
authorBruce Yinhe <[email protected]>2014-07-15 15:38:27 +0200
committerBruce Yinhe <[email protected]>2014-07-15 15:38:27 +0200
commit172e812c491680fbb175f56f7604d4098cdc9de4 (patch)
tree9e27ba7be46d58144961148b606328a27deee354 /lib/stdlib/src/shell.erl
parent218037f874b296eec9452a4195c5f2cef0329d06 (diff)
parent8517d458420fcf9381c81337b3e4f232273082e4 (diff)
downloadotp-172e812c491680fbb175f56f7604d4098cdc9de4.tar.gz
otp-172e812c491680fbb175f56f7604d4098cdc9de4.tar.bz2
otp-172e812c491680fbb175f56f7604d4098cdc9de4.zip
Merge branch 'nox/maps-shell-expansion' into maint
OTP-12063 * nox/maps-shell-expansion: Expand shell functions in map expressions
Diffstat (limited to 'lib/stdlib/src/shell.erl')
-rw-r--r--lib/stdlib/src/shell.erl8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/stdlib/src/shell.erl b/lib/stdlib/src/shell.erl
index 3b90542452..679c13f0cf 100644
--- a/lib/stdlib/src/shell.erl
+++ b/lib/stdlib/src/shell.erl
@@ -371,6 +371,14 @@ expand_expr({bc,L,E,Qs}, C) ->
{bc,L,expand_expr(E, C),expand_quals(Qs, C)};
expand_expr({tuple,L,Elts}, C) ->
{tuple,L,expand_exprs(Elts, C)};
+expand_expr({map,L,Es}, C) ->
+ {map,L,expand_exprs(Es, C)};
+expand_expr({map,L,Arg,Es}, C) ->
+ {map,L,expand_expr(Arg, C),expand_exprs(Es, C)};
+expand_expr({map_field_assoc,L,K,V}, C) ->
+ {map_field_assoc,L,expand_expr(K, C),expand_expr(V, C)};
+expand_expr({map_field_exact,L,K,V}, C) ->
+ {map_field_exact,L,expand_expr(K, C),expand_expr(V, C)};
expand_expr({record_index,L,Name,F}, C) ->
{record_index,L,Name,expand_expr(F, C)};
expand_expr({record,L,Name,Is}, C) ->