Changeset 192882 in webkit for trunk/Source/JavaScriptCore/runtime/Executable.h
- Timestamp:
- Dec 1, 2015, 6:39:58 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/runtime/Executable.h
r192876 r192882 345 345 bool usesArguments() const { return m_features & ArgumentsFeature; } 346 346 bool needsActivation() const { return m_hasCapturedVariables || m_features & (EvalFeature | WithFeature); } 347 bool isArrowFunctionContext() const { return m_isArrowFunctionContext; }348 347 bool isStrictMode() const { return m_features & StrictModeFeature; } 349 bool isDerivedConstructorContext() const { return m_isDerivedConstructorContext; }350 348 ECMAMode ecmaMode() const { return isStrictMode() ? StrictMode : NotStrictMode; } 351 349 … … 396 394 397 395 protected: 398 ScriptExecutable(Structure* , VM&, const SourceCode&, bool isInStrictContext, bool isInDerivedConstructorContext, bool isInArrowFunctionContext);396 ScriptExecutable(Structure* structure, VM& vm, const SourceCode& source, bool isInStrictContext); 399 397 400 398 void finishCreation(VM& vm) … … 415 413 bool m_neverOptimize { false }; 416 414 bool m_didTryToEnterInLoop; 417 bool m_isDerivedConstructorContext;418 bool m_isArrowFunctionContext;419 415 int m_overrideLineNumber; 420 416 int m_firstLine; … … 439 435 } 440 436 441 static EvalExecutable* create(ExecState*, const SourceCode&, bool isInStrictContext, ThisTDZMode, bool isDerivedConstructorContext, bool isArrowFunctionContext,const VariableEnvironment*);437 static EvalExecutable* create(ExecState*, const SourceCode&, bool isInStrictContext, ThisTDZMode, const VariableEnvironment*); 442 438 443 439 PassRefPtr<JITCode> generatedJITCode() … … 453 449 DECLARE_INFO; 454 450 455 ExecutableInfo executableInfo() const { return ExecutableInfo(needsActivation(), usesEval(), isStrictMode(), false, false, ConstructorKind::None, false , isDerivedConstructorContext(), isArrowFunctionContext()); }451 ExecutableInfo executableInfo() const { return ExecutableInfo(needsActivation(), usesEval(), isStrictMode(), false, false, ConstructorKind::None, false); } 456 452 457 453 unsigned numVariables() { return m_unlinkedEvalCodeBlock->numVariables(); } … … 461 457 friend class ExecutableBase; 462 458 friend class ScriptExecutable; 463 EvalExecutable(ExecState*, const SourceCode&, bool inStrictContext, bool isDerivedConstructorContext, bool isArrowFunctionContext);459 EvalExecutable(ExecState*, const SourceCode&, bool); 464 460 465 461 static void visitChildren(JSCell*, SlotVisitor&); … … 506 502 DECLARE_INFO; 507 503 508 ExecutableInfo executableInfo() const { return ExecutableInfo(needsActivation(), usesEval(), isStrictMode(), false, false, ConstructorKind::None, false , isDerivedConstructorContext(), false); }504 ExecutableInfo executableInfo() const { return ExecutableInfo(needsActivation(), usesEval(), isStrictMode(), false, false, ConstructorKind::None, false); } 509 505 510 506 private: … … 547 543 DECLARE_INFO; 548 544 549 ExecutableInfo executableInfo() const { return ExecutableInfo(needsActivation(), usesEval(), isStrictMode(), false, false, ConstructorKind::None, false, isDerivedConstructorContext(), false); } 550 545 ExecutableInfo executableInfo() const { return ExecutableInfo(needsActivation(), usesEval(), isStrictMode(), false, false, ConstructorKind::None, false); } 551 546 UnlinkedModuleProgramCodeBlock* unlinkedModuleProgramCodeBlock() { return m_unlinkedModuleProgramCodeBlock.get(); } 552 547 … … 657 652 ConstructAbility constructAbility() const { return m_unlinkedExecutable->constructAbility(); } 658 653 bool isArrowFunction() const { return m_unlinkedExecutable->isArrowFunction(); } 659 bool isDerivedConstructorContext() const { return m_unlinkedExecutable->isDerivedConstructorContext(); }660 654 bool isClassConstructorFunction() const { return m_unlinkedExecutable->isClassConstructorFunction(); } 661 655 const Identifier& name() { return m_unlinkedExecutable->name(); }
Note:
See TracChangeset
for help on using the changeset viewer.