| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- //-------------------------------------------------------------------------------------------------------
- // Copyright (C) Microsoft. All rights reserved.
- // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
- //-------------------------------------------------------------------------------------------------------
- #pragma once
- namespace Js
- {
- class JavascriptNumberObject : public DynamicObject
- {
- private:
- Field(Var) value;
- DEFINE_VTABLE_CTOR(JavascriptNumberObject, DynamicObject);
- DEFINE_MARSHAL_OBJECT_TO_SCRIPT_CONTEXT(JavascriptNumberObject);
- protected:
- JavascriptNumberObject(DynamicType * type);
- public:
- JavascriptNumberObject(Var value, DynamicType * type);
- static bool Is(Var aValue);
- static JavascriptNumberObject* FromVar(Var aValue);
- double GetValue() const;
- void SetValue(Var value);
- Var Unwrap() const;
- virtual BOOL GetDiagValueString(StringBuilder<ArenaAllocator>* stringBuilder, ScriptContext* requestContext) override;
- virtual BOOL GetDiagTypeString(StringBuilder<ArenaAllocator>* stringBuilder, ScriptContext* requestContext) override;
- #if ENABLE_TTD
- public:
- void SetValue_TTD(Js::Var val);
- virtual void MarkVisitKindSpecificPtrs(TTD::SnapshotExtractor* extractor) override;
- virtual TTD::NSSnapObjects::SnapObjectType GetSnapTag_TTD() const override;
- virtual void ExtractSnapObjectDataInto(TTD::NSSnapObjects::SnapObject* objData, TTD::SlabAllocator& alloc) override;
- #endif
- };
- }
|