anchor.diff:      {struct, []}.
   
   is_obj({struct, Props}) ->
  -    F = fun ({K, _}) when is_binary(K) ->
  -                true;
  -            (_) ->
  -                false
  -        end,
  +    F = fun ({K, _}) when is_binary(K) -> true end,
       lists:all(F, Props).
   
   obj_from_list(Props) ->
       Obj = {struct, Props},
  -    case is_obj(Obj) of
  -        true -> Obj;
  -        false -> exit({json_bad_object, Obj})
  -    end.
  +    ?assert(is_obj(Obj)),
  +    Obj.
   
   %% Test for equivalence of Erlang terms.
   %% Due to arbitrary order of construction, equivalent objects might
  
positive.code:         %% we don't support code points > 10FFFF per RFC 3629
          <<?Q, 16#F5, 16#80, 16#80, 16#80, ?Q>>
      ],
      lists:foreach(fun(X) ->
          ok = try decode(X) catch invalid_utf8 -> ok end
      end, Bad).
  
  inline_json_test() ->
      ?assertEqual(<<"\"iodata iodata\"">>,
  
negative.code:             false;
          $\t ->
              false;
          C when C >= 0, C < $\s; C >= 16#7f ->
              false;
          C when C < 16#7f ->
              json_bin_is_safe(Rest)
      end.
  
  json_encode_string_unicode([], _State, Acc) ->
  