diff options
Diffstat (limited to 'src/3rdparty/webkit/JavaScriptCore/parser/Nodes.h')
-rw-r--r-- | src/3rdparty/webkit/JavaScriptCore/parser/Nodes.h | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.h b/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.h index cda1ee4..a9f88b7 100644 --- a/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.h +++ b/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.h @@ -169,7 +169,8 @@ namespace JSC { virtual bool isResolveNode() const { return false; } virtual bool isBracketAccessorNode() const { return false; } virtual bool isDotAccessorNode() const { return false; } - virtual bool isFuncExprNode() const { return false; } + virtual bool isFuncExprNode() const { return false; } + virtual bool isCommaNode() const { return false; } virtual bool isSimpleArray() const { return false; } virtual bool isAdd() const { return false; } @@ -1087,16 +1088,20 @@ namespace JSC { Operator m_operator; ExpressionNode* m_right; }; + + typedef Vector<ExpressionNode*, 8> ExpressionVector; class CommaNode : public ExpressionNode { public: CommaNode(JSGlobalData*, ExpressionNode* expr1, ExpressionNode* expr2); + void append(ExpressionNode* expr) { m_expressions.append(expr); } + private: + virtual bool isCommaNode() const { return true; } virtual RegisterID* emitBytecode(BytecodeGenerator&, RegisterID* = 0); - ExpressionNode* m_expr1; - ExpressionNode* m_expr2; + ExpressionVector m_expressions; }; class ConstDeclNode : public ExpressionNode { @@ -1554,14 +1559,7 @@ namespace JSC { return m_code; } - bool isHostFunction() const - { -#if ENABLE(JIT) - return !!m_jitCode && !m_code; -#else - return true; -#endif - } + bool isHostFunction() const; virtual void mark(); |