typename basic_json<Char, Alloc>::object as(const basic_json<Char, Alloc>& val) const { JSONCONS_ASSERT(val.is_object()); return val.is_empty() ? typename basic_json<Char, Alloc>::object() : val.object_value(); }