diff options
Diffstat (limited to 'Libraries/LibJS/Value.cpp')
-rw-r--r-- | Libraries/LibJS/Value.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Libraries/LibJS/Value.cpp b/Libraries/LibJS/Value.cpp index c4c25b2e1e..6ba182f6f5 100644 --- a/Libraries/LibJS/Value.cpp +++ b/Libraries/LibJS/Value.cpp @@ -89,6 +89,18 @@ Value Value::to_object(Heap& heap) const ASSERT_NOT_REACHED(); } +i32 Value::to_i32() const +{ + switch (m_type) { + case Type::Boolean: + return m_value.as_bool; + case Type::Number: + return static_cast<i32>(m_value.as_double); + default: + ASSERT_NOT_REACHED(); + } +} + Value greater_than(Value lhs, Value rhs) { ASSERT(lhs.is_number()); @@ -209,8 +221,6 @@ Value typed_eq(Value lhs, Value rhs) ASSERT_NOT_REACHED(); } - - const LogStream& operator<<(const LogStream& stream, const Value& value) { return stream << value.to_string(); |