@@ -340,23 +340,13 @@ quote(Expr, Q) ->
340340do_quote ({quote , Meta , [Arg ]}, Q ) when is_list (Meta ) ->
341341 TArg = do_quote (Arg , Q # elixir_quote {unquote = false }),
342342
343- NewMeta = case Q of
344- # elixir_quote {op = add_context , context = Context } -> keystore (context , Meta , Context );
345- _ -> Meta
346- end ,
347-
348- {'{}' , [], [quote , meta (NewMeta , Q ), [TArg ]]};
343+ {'{}' , [], [quote , quote_meta (Meta , Q ), [TArg ]]};
349344
350345do_quote ({quote , Meta , [Opts , Arg ]}, Q ) when is_list (Meta ) ->
351346 TOpts = do_quote (Opts , Q ),
352347 TArg = do_quote (Arg , Q # elixir_quote {unquote = false }),
353348
354- NewMeta = case Q of
355- # elixir_quote {op = add_context , context = Context } -> keystore (context , Meta , Context );
356- _ -> Meta
357- end ,
358-
359- {'{}' , [], [quote , meta (NewMeta , Q ), [TOpts , TArg ]]};
349+ {'{}' , [], [quote , quote_meta (Meta , Q ), [TOpts , TArg ]]};
360350
361351%
362352do_quote ({unquote , Meta , [Expr ]}, # elixir_quote {unquote = true , shallow_validate = Validate }) when is_list (Meta ) ->
@@ -598,6 +588,14 @@ argument_error(Message) ->
598588meta (Meta , Q ) ->
599589 generated (keep (keydelete (column , Meta ), Q ), Q ).
600590
591+ quote_meta (Meta , Q ) ->
592+ Meta1 = do_quote (Meta , Q ),
593+ Meta2 = case Q of
594+ # elixir_quote {op = add_context , context = Context } -> keystore (context , Meta1 , Context );
595+ _ -> Meta1
596+ end ,
597+ meta (Meta2 , Q ).
598+
601599generated (Meta , # elixir_quote {generated = true }) -> [{generated , true } | Meta ];
602600generated (Meta , # elixir_quote {generated = false }) -> Meta .
603601
0 commit comments