bool has(JSContext *cx, unsigned argc, Value *vp) {
  METHOD_HEADER(1)

  NORMALIZE_NAME(args[0], "Headers.has")
  bool has;
  RootedObject map(cx, detail::backing_map(self));
  if (!JS::MapHas(cx, map, normalized_name, &has))
    return false;
  args.rval().setBoolean(has);
  return true;
}
bool has(JSContext *cx, unsigned argc, Value *vp) {
  METHOD_HEADER(1)

  NORMALIZE_NAME(args[0], "Headers.has")
  bool has;
  RootedObject map(cx, detail::backing_map(self));
  if (!JS::MapHas(cx, map, normalized_name, &has))
    return false;
  args.rval().setBoolean(has);
  return true;
}