blob: 5c46630041a9f6e64bdf8b7467afd3aa6bddb42f [file]
// 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)
IS_TYPE_FUNCTION_DECL(UndefinedContextCell)
IS_TYPE_FUNCTION_DECL(NullOrUndefined)
#undef IS_TYPE_FUNCTION_DECL
} // namespace v8::internal
#endif // V8_OBJECTS_ODDBALL_PREDICATES_H_