5#ifndef V8_OBJECTS_SMI_H_
6#define V8_OBJECTS_SMI_H_
59 requires std::is_enum<E>::value
61 static_assert(
sizeof(E) <=
sizeof(int));
62 return FromInt(
static_cast<int>(value));
67 static inline bool constexpr IsValid(T value)
68 requires(std::is_integral_v<T> && std::is_signed_v<T>)
75 static inline bool constexpr IsValid(T value)
76 requires(std::is_integral_v<T> && std::is_unsigned_v<T>)
static V8_INLINE constexpr Address IntegralToSmi(T value)
static V8_INLINE constexpr bool IsValidSmi(T value)
static constexpr Tagged< Smi > FromEnum(E value)
static constexpr int ToInt(const Tagged< Object > object)
static constexpr Tagged< Smi > uninitialized_deserialization_value()
static constexpr Tagged< Smi > FromInt(int value)
static bool constexpr IsValid(T value)
static constexpr Tagged< Smi > From31BitPattern(int value)
static constexpr Tagged< Smi > FromIntptr(intptr_t value)
static bool constexpr IsValid(T value)
static constexpr Tagged< Smi > ToUint32Smi(Tagged< Smi > smi)
static constexpr int kMinValue
static V8_EXPORT_PRIVATE Address LexicographicCompare(Isolate *isolate, Tagged< Smi > x, Tagged< Smi > y)
static V8_EXPORT_PRIVATE void SmiPrint(Tagged< Smi > smi, std::ostream &os)
static constexpr int kMaxValue
static constexpr Address kNullAddress
#define DECL_STATIC_VERIFIER(Name)
#define DCHECK(condition)
#define DCHECK_EQ(v1, v2)
#define V8_EXPORT_PRIVATE