changed the end of input character to a unicode non character
This commit is contained in:
parent
079aa7ccf6
commit
bdc173a6e4
2 changed files with 6 additions and 6 deletions
|
@ -38,7 +38,7 @@ start(<<S/utf8, Rest/binary>>, Stack, Callbacks, Opts) when ?is_whitespace(S) ->
|
||||||
start(<<>>, Stack, Callbacks, Opts) ->
|
start(<<>>, Stack, Callbacks, Opts) ->
|
||||||
fun(Stream) -> start(Stream, Stack, Callbacks, Opts) end.
|
fun(Stream) -> start(Stream, Stack, Callbacks, Opts) end.
|
||||||
|
|
||||||
maybe_done(<<16#F8FF/utf8, Rest/binary>>, [], Callbacks, Opts) when Opts#opts.explicit_termination == true ->
|
maybe_done(<<16#FDEF/utf8, Rest/binary>>, [], Callbacks, Opts) when Opts#opts.explicit_termination == true ->
|
||||||
{callback(eof, Callbacks), Rest};
|
{callback(eof, Callbacks), Rest};
|
||||||
maybe_done(<<Rest/binary>>, [], Callbacks, Opts) when Opts#opts.explicit_termination == false ->
|
maybe_done(<<Rest/binary>>, [], Callbacks, Opts) when Opts#opts.explicit_termination == false ->
|
||||||
{callback(eof, Callbacks), Rest};
|
{callback(eof, Callbacks), Rest};
|
||||||
|
@ -240,7 +240,7 @@ zero(<<?solidus/utf8, Rest/binary>>, Stack, Callbacks, Opts, Acc) when Opts#opts
|
||||||
zero(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
zero(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
||||||
fun(Stream) -> zero(Stream, Stack, Callbacks, Opts, Acc) end;
|
fun(Stream) -> zero(Stream, Stack, Callbacks, Opts, Acc) end;
|
||||||
zero(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
zero(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
||||||
fun(<<16#F8FF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
fun(<<16#FDEF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
||||||
;(Stream) -> zero(Stream, Stack, Callbacks, Opts, Acc)
|
;(Stream) -> zero(Stream, Stack, Callbacks, Opts, Acc)
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
@ -270,7 +270,7 @@ integer(<<?solidus/utf8, Rest/binary>>, Stack, Callbacks, Opts, Acc) when Opts#o
|
||||||
integer(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
integer(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
||||||
fun(Stream) -> integer(Stream, Stack, Callbacks, Opts, Acc) end;
|
fun(Stream) -> integer(Stream, Stack, Callbacks, Opts, Acc) end;
|
||||||
integer(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
integer(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
||||||
fun(<<16#F8FF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
fun(<<16#FDEF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
||||||
;(Stream) -> integer(Stream, Stack, Callbacks, Opts, Acc)
|
;(Stream) -> integer(Stream, Stack, Callbacks, Opts, Acc)
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
@ -298,7 +298,7 @@ fraction(<<?solidus/utf8, Rest/binary>>, Stack, Callbacks, Opts, Acc) when Opts#
|
||||||
fraction(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
fraction(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
||||||
fun(Stream) -> fraction(Stream, Stack, Callbacks, Opts, Acc) end;
|
fun(Stream) -> fraction(Stream, Stack, Callbacks, Opts, Acc) end;
|
||||||
fraction(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
fraction(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
||||||
fun(<<16#F8FF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
fun(<<16#FDEF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
||||||
;(Stream) -> fraction(Stream, Stack, Callbacks, Opts, Acc)
|
;(Stream) -> fraction(Stream, Stack, Callbacks, Opts, Acc)
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
@ -336,7 +336,7 @@ exp(<<?solidus/utf8, Rest/binary>>, Stack, Callbacks, Opts, Acc) when Opts#opts.
|
||||||
exp(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
exp(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == false ->
|
||||||
fun(Stream) -> exp(Stream, Stack, Callbacks, Opts, Acc) end;
|
fun(Stream) -> exp(Stream, Stack, Callbacks, Opts, Acc) end;
|
||||||
exp(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
exp(<<>>, Stack, Callbacks, Opts, Acc) when Opts#opts.explicit_termination == true ->
|
||||||
fun(<<16#F8FF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
fun(<<16#FDEF/utf8>>) -> {callback(eof, callback({number, lists:reverse(Acc)}, Callbacks)), <<>>}
|
||||||
;(Stream) -> exp(Stream, Stack, Callbacks, Opts, Acc)
|
;(Stream) -> exp(Stream, Stack, Callbacks, Opts, Acc)
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
|
@ -35,7 +35,7 @@ test_body(TestSpec, Dir) ->
|
||||||
end.
|
end.
|
||||||
|
|
||||||
decode(F, <<>>) ->
|
decode(F, <<>>) ->
|
||||||
{Result, _} = F(<<16#F8FF/utf8>>),
|
{Result, _} = F(<<16#FDEF/utf8>>),
|
||||||
Result;
|
Result;
|
||||||
decode(F, <<A/utf8, Rest/binary>>) ->
|
decode(F, <<A/utf8, Rest/binary>>) ->
|
||||||
case F(<<A/utf8>>) of
|
case F(<<A/utf8>>) of
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue