From 6df04635b8b45e53e7a2395ad6cecb8f4933f679 Mon Sep 17 00:00:00 2001 From: alisdair sullivan Date: Sat, 2 Mar 2013 14:56:32 -0800 Subject: [PATCH] change seq macros to functions --- src/jsx_decoder.erl | 304 ++++++++++++++++++++++---------------------- 1 file changed, 152 insertions(+), 152 deletions(-) diff --git a/src/jsx_decoder.erl b/src/jsx_decoder.erl index 36a226e..d80c717 100644 --- a/src/jsx_decoder.erl +++ b/src/jsx_decoder.erl @@ -133,13 +133,13 @@ decoder(Handler, State, Config) -> -endif. --define(new_seq(), []). --define(new_seq(C), [C]). +new_seq() -> []. +new_seq(C) -> [C]. --define(acc_seq(Seq, C), [C] ++ Seq). --define(acc_seq(Seq, C, D), [C, D] ++ Seq). +acc_seq(Seq, C) -> [C] ++ Seq. +acc_seq(Seq, C, D) -> [C, D] ++ Seq. --define(end_seq(Seq), unicode:characters_to_binary(lists:reverse(Seq))). +end_seq(Seq) -> unicode:characters_to_binary(lists:reverse(Seq)). handle_event([], Handler, _Config) -> Handler; @@ -174,9 +174,9 @@ definitely_bom(Bin, Handler, Stack, Config) -> value(<>, Handler, Stack, Config) -> - string(Rest, Handler, ?new_seq(), Stack, Config); + string(Rest, Handler, new_seq(), Stack, Config); value(<>, Handler, Stack, Config = #config{single_quoted_strings=true}) -> - string(Rest, Handler, ?new_seq(), [single_quote|Stack], Config); + string(Rest, Handler, new_seq(), [single_quote|Stack], Config); value(<<$t, Rest/binary>>, Handler, Stack, Config) -> true(Rest, Handler, Stack, Config); value(<<$f, Rest/binary>>, Handler, Stack, Config) -> @@ -204,9 +204,9 @@ value(Bin, Handler, Stack, Config) -> object(<>, Handler, Stack, Config) -> - string(Rest, Handler, ?new_seq(), Stack, Config); + string(Rest, Handler, new_seq(), Stack, Config); object(<>, Handler, Stack, Config = #config{single_quoted_strings=true}) -> - string(Rest, Handler, ?new_seq(), [single_quote|Stack], Config); + string(Rest, Handler, new_seq(), [single_quote|Stack], Config); object(<>, Handler, [key|Stack], Config) -> maybe_done(Rest, handle_event(end_object, Handler, Config), Stack, Config); object(<>, Handler, Stack, Config) when ?is_whitespace(S) -> @@ -244,9 +244,9 @@ colon(Bin, Handler, Stack, Config) -> key(<>, Handler, Stack, Config) -> - string(Rest, Handler, ?new_seq(), Stack, Config); + string(Rest, Handler, new_seq(), Stack, Config); key(<>, Handler, Stack, Config = #config{single_quoted_strings=true}) -> - string(Rest, Handler, ?new_seq(), [single_quote|Stack], Config); + string(Rest, Handler, new_seq(), [single_quote|Stack], Config); key(<>, Handler, Stack, Config) when ?is_whitespace(S) -> key(Rest, Handler, Stack, Config); key(<>, Handler, Stack, Config=#config{comments=true}) -> @@ -260,264 +260,264 @@ key(Bin, Handler, Stack, Config) -> %% explicitly whitelist ascii set for better efficiency (seriously, it's worth %% almost a 20% increase) string(<<32, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 32), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 32), Stack, Config); string(<<33, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 33), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 33), Stack, Config); string(<>, Handler, Acc, Stack, Config) -> case Stack of [key|_] -> - colon(Rest, handle_event({key, ?end_seq(Acc)}, Handler, Config), Stack, Config); + colon(Rest, handle_event({key, end_seq(Acc)}, Handler, Config), Stack, Config); [single_quote|_] -> - string(Rest, Handler,?acc_seq(Acc, maybe_replace(?doublequote, Config)), Stack, Config); + string(Rest, Handler,acc_seq(Acc, maybe_replace(?doublequote, Config)), Stack, Config); _ -> - maybe_done(Rest, handle_event({string, ?end_seq(Acc)}, Handler, Config), Stack, Config) + maybe_done(Rest, handle_event({string, end_seq(Acc)}, Handler, Config), Stack, Config) end; string(<<35, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 35), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 35), Stack, Config); string(<<36, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 36), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 36), Stack, Config); string(<<37, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 37), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 37), Stack, Config); string(<<38, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 38), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 38), Stack, Config); string(<>, Handler, Acc, Stack, Config) -> case Stack of [single_quote, key|S] -> - colon(Rest, handle_event({key, ?end_seq(Acc)}, Handler, Config), [key|S], Config) + colon(Rest, handle_event({key, end_seq(Acc)}, Handler, Config), [key|S], Config) ; [single_quote|S] -> - maybe_done(Rest, handle_event({string, ?end_seq(Acc)}, Handler, Config), S, Config) + maybe_done(Rest, handle_event({string, end_seq(Acc)}, Handler, Config), S, Config) ; _ -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace(?singlequote, Config)), Stack, Config) + string(Rest, Handler, acc_seq(Acc, maybe_replace(?singlequote, Config)), Stack, Config) end; string(<<40, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 40), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 40), Stack, Config); string(<<41, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 41), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 41), Stack, Config); string(<<42, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 42), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 42), Stack, Config); string(<<43, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 43), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 43), Stack, Config); string(<<44, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 44), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 44), Stack, Config); string(<<45, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 45), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 45), Stack, Config); string(<<46, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 46), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 46), Stack, Config); string(<>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace(?solidus, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace(?solidus, Config)), Stack, Config); string(<<48, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 48), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 48), Stack, Config); string(<<49, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 49), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 49), Stack, Config); string(<<50, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 50), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 50), Stack, Config); string(<<51, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 51), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 51), Stack, Config); string(<<52, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 52), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 52), Stack, Config); string(<<53, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 53), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 53), Stack, Config); string(<<54, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 54), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 54), Stack, Config); string(<<55, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 55), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 55), Stack, Config); string(<<56, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 56), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 56), Stack, Config); string(<<57, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 57), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 57), Stack, Config); string(<<58, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 58), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 58), Stack, Config); string(<<59, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 59), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 59), Stack, Config); string(<<60, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 60), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 60), Stack, Config); string(<<61, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 61), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 61), Stack, Config); string(<<62, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 62), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 62), Stack, Config); string(<<63, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 63), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 63), Stack, Config); string(<<64, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 64), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 64), Stack, Config); string(<<65, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 65), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 65), Stack, Config); string(<<66, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 66), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 66), Stack, Config); string(<<67, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 67), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 67), Stack, Config); string(<<68, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 68), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 68), Stack, Config); string(<<69, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 69), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 69), Stack, Config); string(<<70, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 70), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 70), Stack, Config); string(<<71, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 71), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 71), Stack, Config); string(<<72, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 72), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 72), Stack, Config); string(<<73, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 73), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 73), Stack, Config); string(<<74, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 74), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 74), Stack, Config); string(<<75, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 75), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 75), Stack, Config); string(<<76, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 76), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 76), Stack, Config); string(<<77, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 77), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 77), Stack, Config); string(<<78, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 78), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 78), Stack, Config); string(<<79, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 79), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 79), Stack, Config); string(<<80, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 80), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 80), Stack, Config); string(<<81, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 81), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 81), Stack, Config); string(<<82, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 82), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 82), Stack, Config); string(<<83, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 83), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 83), Stack, Config); string(<<84, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 84), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 84), Stack, Config); string(<<85, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 85), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 85), Stack, Config); string(<<86, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 86), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 86), Stack, Config); string(<<87, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 87), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 87), Stack, Config); string(<<88, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 88), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 88), Stack, Config); string(<<89, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 89), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 89), Stack, Config); string(<<90, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 90), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 90), Stack, Config); string(<<91, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 91), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 91), Stack, Config); string(<>, Handler, Acc, Stack, Config) -> unescape(Rest, Handler, Acc, Stack, Config); string(<<93, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 93), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 93), Stack, Config); string(<<94, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 94), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 94), Stack, Config); string(<<95, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 95), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 95), Stack, Config); string(<<96, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 96), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 96), Stack, Config); string(<<97, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 97), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 97), Stack, Config); string(<<98, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 98), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 98), Stack, Config); string(<<99, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 99), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 99), Stack, Config); string(<<100, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 100), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 100), Stack, Config); string(<<101, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 101), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 101), Stack, Config); string(<<102, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 102), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 102), Stack, Config); string(<<103, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 103), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 103), Stack, Config); string(<<104, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 104), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 104), Stack, Config); string(<<105, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 105), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 105), Stack, Config); string(<<106, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 106), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 106), Stack, Config); string(<<107, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 107), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 107), Stack, Config); string(<<108, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 108), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 108), Stack, Config); string(<<109, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 109), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 109), Stack, Config); string(<<110, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 110), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 110), Stack, Config); string(<<111, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 111), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 111), Stack, Config); string(<<112, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 112), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 112), Stack, Config); string(<<113, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 113), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 113), Stack, Config); string(<<114, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 114), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 114), Stack, Config); string(<<115, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 115), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 115), Stack, Config); string(<<116, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 116), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 116), Stack, Config); string(<<117, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 117), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 117), Stack, Config); string(<<118, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 118), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 118), Stack, Config); string(<<119, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 119), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 119), Stack, Config); string(<<120, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 120), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 120), Stack, Config); string(<<121, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 121), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 121), Stack, Config); string(<<122, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 122), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 122), Stack, Config); string(<<123, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 123), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 123), Stack, Config); string(<<124, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 124), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 124), Stack, Config); string(<<125, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 125), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 125), Stack, Config); string(<<126, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 126), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 126), Stack, Config); string(<<127, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, 127), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 127), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#20, X < 16#2028 -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X == 16#2028; X == 16#2029 -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace(X, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace(X, Config)), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X > 16#2029, X < 16#d800 -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X > 16#dfff, X < 16#fdd0 -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X > 16#fdef, X < 16#fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#10000, X < 16#1fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#20000, X < 16#2fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#30000, X < 16#3fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#40000, X < 16#4fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#50000, X < 16#5fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#60000, X < 16#6fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#70000, X < 16#7fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#80000, X < 16#8fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#90000, X < 16#9fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#a0000, X < 16#afffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#b0000, X < 16#bfffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#c0000, X < 16#cfffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#d0000, X < 16#dfffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#e0000, X < 16#efffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#f0000, X < 16#ffffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); string(<>, Handler, Acc, Stack, Config) when X >= 16#100000, X < 16#10fffe -> - string(Rest, Handler, ?acc_seq(Acc, X), Stack, Config); + string(Rest, Handler, acc_seq(Acc, X), Stack, Config); %% surrogates string(<<237, X, _, Rest/binary>>, Handler, Acc, Stack, #config{replaced_bad_utf8=true} = Config) when X >= 160 -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config); %% u+fffe and u+ffff for R14BXX string(<<239, 191, X, Rest/binary>>, Handler, Acc, Stack, #config{replaced_bad_utf8=true} = Config) when X == 190; X == 191 -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config); %% u+xfffe, u+xffff, control codes and other noncharacters string(<<_/utf8, Rest/binary>>, Handler, Acc, Stack, #config{replaced_bad_utf8=true} = Config) -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config); %% overlong encodings and missing continuations of a 2 byte sequence string(<>, Handler, Acc, Stack, #config{replaced_bad_utf8=true} = Config) when X >= 192, X =< 223 -> @@ -534,7 +534,7 @@ string(<>, Handler, Acc, Stack, #config{replaced_bad_utf8=true} string(<<_, Rest/binary>> = Bin, Handler, Acc, Stack, #config{replaced_bad_utf8=true} = Config) -> case partial_utf(Bin) of true -> ?incomplete(string, Bin, Handler, Acc, Stack, Config); - false -> string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config) + false -> string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config) end; string(Bin, Handler, Acc, Stack, Config) -> case partial_utf(Bin) of @@ -566,7 +566,7 @@ partial_utf(_) -> false. %% possible magic numbers are reinserted into the stream that get us back to %% the same state without complicated machinery strip_continuations(Rest, Handler, Acc, Stack, Config, 0) -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config); strip_continuations(<>, Handler, Acc, Stack, Config, N) when X >= 128, X =< 191 -> strip_continuations(Rest, Handler, Acc, Stack, Config, N - 1); %% incomplete @@ -578,27 +578,27 @@ strip_continuations(<<>>, Handler, Acc, Stack, Config, N) -> end; %% not a continuation byte, dispatch back to string strip_continuations(Rest, Handler, Acc, Stack, Config, _) -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config). + string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config). unescape(<<$b, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\b, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\b, Config)), Stack, Config); unescape(<<$f, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\f, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\f, Config)), Stack, Config); unescape(<<$n, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\n, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\n, Config)), Stack, Config); unescape(<<$r, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\r, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\r, Config)), Stack, Config); unescape(<<$t, Rest/binary>>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\t, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\t, Config)), Stack, Config); unescape(<>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\\, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\\, Config)), Stack, Config); unescape(<>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($/, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($/, Config)), Stack, Config); unescape(<>, Handler, Acc, Stack, Config) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace($\", Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace($\", Config)), Stack, Config); unescape(<>, Handler, Acc, Stack, Config=#config{single_quoted_strings=true}) -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace(?singlequote, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace(?singlequote, Config)), Stack, Config); unescape(<<$u, $d, A, B, C, ?rsolidus, $u, $d, X, Y, Z, Rest/binary>>, Handler, Acc, Stack, Config) when (A == $8 orelse A == $9 orelse A == $a orelse A == $b), (X == $c orelse X == $d orelse X == $e orelse X == $f), @@ -607,12 +607,12 @@ unescape(<<$u, $d, A, B, C, ?rsolidus, $u, $d, X, Y, Z, Rest/binary>>, Handler, High = erlang:list_to_integer([$d, A, B, C], 16), Low = erlang:list_to_integer([$d, X, Y, Z], 16), Codepoint = (High - 16#d800) * 16#400 + (Low - 16#dc00) + 16#10000, - string(Rest, Handler, ?acc_seq(Acc, Codepoint), Stack, Config); + string(Rest, Handler, acc_seq(Acc, Codepoint), Stack, Config); unescape(<<$u, $d, A, B, C, ?rsolidus, $u, W, X, Y, Z, Rest/binary>>, Handler, Acc, Stack, Config) when (A == $8 orelse A == $9 orelse A == $a orelse A == $b), ?is_hex(B), ?is_hex(C), ?is_hex(W), ?is_hex(X), ?is_hex(Y), ?is_hex(Z) -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd, 16#fffd), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 16#fffd, 16#fffd), Stack, Config); unescape(<<$u, $d, A, B, C, ?rsolidus, Rest/binary>> = Bin, Handler, Acc, Stack, Config) when (A == $8 orelse A == $9 orelse A == $a orelse A == $b) andalso ?is_hex(B), ?is_hex(C) @@ -620,7 +620,7 @@ unescape(<<$u, $d, A, B, C, ?rsolidus, Rest/binary>> = Bin, Handler, Acc, Stack, case is_partial_escape(Rest) of true -> ?incomplete(string, <>, Handler, Acc, Stack, Config); false when Config#config.replaced_bad_utf8 -> - string(<>, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config); + string(<>, Handler, acc_seq(Acc, 16#fffd), Stack, Config); false -> ?error([Bin, Handler, Acc, Stack, Config]) end; unescape(<<$u, $d, A, B, C>> = Bin, Handler, Acc, Stack, Config) @@ -632,13 +632,13 @@ unescape(<<$u, A, B, C, D, Rest/binary>> = Bin, Handler, Acc, Stack, Config) when ?is_hex(A), ?is_hex(B), ?is_hex(C), ?is_hex(D) -> case erlang:list_to_integer([A, B, C, D], 16) of Codepoint when Codepoint < 16#d800; Codepoint > 16#dfff -> - string(Rest, Handler, ?acc_seq(Acc, maybe_replace(Codepoint, Config)), Stack, Config); + string(Rest, Handler, acc_seq(Acc, maybe_replace(Codepoint, Config)), Stack, Config); _ when Config#config.replaced_bad_utf8 -> - string(Rest, Handler, ?acc_seq(Acc, 16#fffd), Stack, Config); + string(Rest, Handler, acc_seq(Acc, 16#fffd), Stack, Config); _ -> ?error([Bin, Handler, Acc, Stack, Config]) end; unescape(Bin, Handler, Acc, Stack, Config=#config{ignored_bad_escapes=true}) -> - string(Bin, Handler, ?acc_seq(Acc, ?rsolidus), Stack, Config); + string(Bin, Handler, acc_seq(Acc, ?rsolidus), Stack, Config); unescape(Bin, Handler, Acc, Stack, Config) -> case is_partial_escape(Bin) of true -> ?incomplete(string, <>, Handler, Acc, Stack, Config);