Changeset 28887 in webkit for trunk/JavaScriptCore/kjs/ExecState.h
- Timestamp:
- Dec 20, 2007, 9:42:50 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/ExecState.h
r28884 r28887 109 109 110 110 LocalStorage& localStorage() { return *m_localStorage; } 111 111 112 // These are only valid right after calling execute(). 113 ComplType completionType() const { return m_completionType; } 114 const Identifier& breakOrContinueTarget() const 115 { 116 ASSERT(m_completionType == Break || m_completionType == Continue); 117 return *m_breakOrContinueTarget; 118 } 119 120 // Only for use in the implementation of execute(). 121 void setCompletionType(ComplType type) 122 { 123 ASSERT(type != Break); 124 ASSERT(type != Continue); 125 m_completionType = type; 126 } 127 JSValue* setNormalCompletion() 128 { 129 ASSERT(!hadException()); 130 m_completionType = Normal; 131 return 0; 132 } 133 JSValue* setNormalCompletion(JSValue* value) 134 { 135 ASSERT(!hadException()); 136 m_completionType = Normal; 137 return value; 138 } 139 JSValue* setBreakCompletion(const Identifier* target) 140 { 141 ASSERT(!hadException()); 142 m_completionType = Break; 143 m_breakOrContinueTarget = target; 144 return 0; 145 } 146 JSValue* setContinueCompletion(const Identifier* target) 147 { 148 ASSERT(!hadException()); 149 m_completionType = Continue; 150 m_breakOrContinueTarget = target; 151 return 0; 152 } 153 JSValue* setReturnValueCompletion(JSValue* returnValue) 154 { 155 ASSERT(!hadException()); 156 ASSERT(returnValue); 157 m_completionType = ReturnValue; 158 return returnValue; 159 } 160 JSValue* setThrowCompletion(JSValue* exception) 161 { 162 ASSERT(!hadException()); 163 ASSERT(exception); 164 m_completionType = Throw; 165 return exception; 166 } 167 JSValue* setInterruptedCompletion() 168 { 169 ASSERT(!hadException()); 170 m_completionType = Interrupted; 171 return 0; 172 } 173 112 174 public: 113 175 ExecState(JSGlobalObject* glob, JSObject* thisV, … … 142 204 int m_switchDepth; 143 205 CodeType m_codeType; 206 207 ComplType m_completionType; 208 const Identifier* m_breakOrContinueTarget; 144 209 }; 145 210
Note:
See TracChangeset
for help on using the changeset viewer.