current commit
261015.17 · deps: update V8 to 15.6.75.13
// Copyright 2026 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef V8_OBJECTS_ODDBALL_PREDICATES_H_
#define V8_OBJECTS_ODDBALL_PREDICATES_H_

#include "src/common/globals.h"
#include "src/objects/object-list-macros.h"
#include "src/objects/tagged.h"

namespace v8::internal {

class EarlyReadOnlyRoots;
class Object;

#define IS_TYPE_FUNCTION_DECL(Type, ...)                                 \
  V8_INLINE bool Is##Type(Tagged<Object> obj, EarlyReadOnlyRoots roots); \
  V8_INLINE bool Is##Type(Tagged<Object> obj);

ODDBALL_LIST(IS_TYPE_FUNCTION_DECL)
HOLE_LIST(IS_TYPE_FUNCTION_DECL)
#ifndef V8_ENABLE_TDZ_HOLE
IS_TYPE_FUNCTION_DECL(TdzHole)
#endif
IS_TYPE_FUNCTION_DECL(UndefinedContextCell)
IS_TYPE_FUNCTION_DECL(NullOrUndefined)
#undef IS_TYPE_FUNCTION_DECL

}  // namespace v8::internal

#endif  // V8_OBJECTS_ODDBALL_PREDICATES_H_