X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/9dae56ea45a0f5f8136a5c93d6f3a7f99399ca73..1df5f87f1309a8daa30dabdee855f48ae40d14ab:/runtime/Completion.h diff --git a/runtime/Completion.h b/runtime/Completion.h index 9631b50..1dd25fd 100644 --- a/runtime/Completion.h +++ b/runtime/Completion.h @@ -28,10 +28,10 @@ namespace JSC { class ExecState; - class ScopeChain; + class ScopeChainNode; class SourceCode; - enum ComplType { Normal, Break, Continue, ReturnValue, Throw, Interrupted }; + enum ComplType { Normal, Break, Continue, ReturnValue, Throw, Interrupted, Terminated }; /* * Completion objects are used to convey the return status and value @@ -39,24 +39,24 @@ namespace JSC { */ class Completion { public: - Completion(ComplType type = Normal, JSValuePtr value = noValue()) + Completion(ComplType type = Normal, JSValue value = JSValue()) : m_type(type) , m_value(value) { } ComplType complType() const { return m_type; } - JSValuePtr value() const { return m_value; } - void setValue(JSValuePtr v) { m_value = v; } + JSValue value() const { return m_value; } + void setValue(JSValue v) { m_value = v; } bool isValueCompletion() const { return m_value; } private: ComplType m_type; - JSValuePtr m_value; + JSValue m_value; }; Completion checkSyntax(ExecState*, const SourceCode&); - Completion evaluate(ExecState*, ScopeChain&, const SourceCode&, JSValuePtr thisValue = noValue()); + Completion evaluate(ExecState*, ScopeChainNode*, const SourceCode&, JSValue thisValue = JSValue()); } // namespace JSC