Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: src/ast.h

Issue 700523003: Classes: Partial fix for constructor not calling super (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: remove todo Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | src/code-stubs.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_AST_H_ 5 #ifndef V8_AST_H_
6 #define V8_AST_H_ 6 #define V8_AST_H_
7 7
8 #include "src/v8.h" 8 #include "src/v8.h"
9 9
10 #include "src/assembler.h" 10 #include "src/assembler.h"
(...skipping 2558 matching lines...) Expand 10 before | Expand all | Expand 10 after
2569 FunctionKind kind() { return FunctionKindBits::decode(bitfield_); } 2569 FunctionKind kind() { return FunctionKindBits::decode(bitfield_); }
2570 bool is_arrow() { 2570 bool is_arrow() {
2571 return IsArrowFunction(FunctionKindBits::decode(bitfield_)); 2571 return IsArrowFunction(FunctionKindBits::decode(bitfield_));
2572 } 2572 }
2573 bool is_generator() { 2573 bool is_generator() {
2574 return IsGeneratorFunction(FunctionKindBits::decode(bitfield_)); 2574 return IsGeneratorFunction(FunctionKindBits::decode(bitfield_));
2575 } 2575 }
2576 bool is_concise_method() { 2576 bool is_concise_method() {
2577 return IsConciseMethod(FunctionKindBits::decode(bitfield_)); 2577 return IsConciseMethod(FunctionKindBits::decode(bitfield_));
2578 } 2578 }
2579 bool is_default_constructor() {
2580 return IsDefaultConstructor(FunctionKindBits::decode(bitfield_));
2581 }
2582 bool is_default_constructor_call_super() {
2583 return IsDefaultConstructorCallSuper(FunctionKindBits::decode(bitfield_));
2584 }
2579 2585
2580 int ast_node_count() { return ast_properties_.node_count(); } 2586 int ast_node_count() { return ast_properties_.node_count(); }
2581 AstProperties::Flags* flags() { return ast_properties_.flags(); } 2587 AstProperties::Flags* flags() { return ast_properties_.flags(); }
2582 void set_ast_properties(AstProperties* ast_properties) { 2588 void set_ast_properties(AstProperties* ast_properties) {
2583 ast_properties_ = *ast_properties; 2589 ast_properties_ = *ast_properties;
2584 } 2590 }
2585 int slot_count() { 2591 int slot_count() {
2586 return ast_properties_.feedback_slots(); 2592 return ast_properties_.feedback_slots();
2587 } 2593 }
2588 int ic_slot_count() { return ast_properties_.ic_feedback_slots(); } 2594 int ic_slot_count() { return ast_properties_.ic_feedback_slots(); }
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
2640 int parameter_count_; 2646 int parameter_count_;
2641 int function_token_position_; 2647 int function_token_position_;
2642 2648
2643 unsigned bitfield_; 2649 unsigned bitfield_;
2644 class IsExpression : public BitField<bool, 0, 1> {}; 2650 class IsExpression : public BitField<bool, 0, 1> {};
2645 class IsAnonymous : public BitField<bool, 1, 1> {}; 2651 class IsAnonymous : public BitField<bool, 1, 1> {};
2646 class Pretenure : public BitField<bool, 2, 1> {}; 2652 class Pretenure : public BitField<bool, 2, 1> {};
2647 class HasDuplicateParameters : public BitField<ParameterFlag, 3, 1> {}; 2653 class HasDuplicateParameters : public BitField<ParameterFlag, 3, 1> {};
2648 class IsFunction : public BitField<IsFunctionFlag, 4, 1> {}; 2654 class IsFunction : public BitField<IsFunctionFlag, 4, 1> {};
2649 class IsParenthesized : public BitField<IsParenthesizedFlag, 5, 1> {}; 2655 class IsParenthesized : public BitField<IsParenthesizedFlag, 5, 1> {};
2650 class FunctionKindBits : public BitField<FunctionKind, 6, 3> {}; 2656 class FunctionKindBits : public BitField<FunctionKind, 6, 5> {};
2651 }; 2657 };
2652 2658
2653 2659
2654 class ClassLiteral FINAL : public Expression { 2660 class ClassLiteral FINAL : public Expression {
2655 public: 2661 public:
2656 typedef ObjectLiteralProperty Property; 2662 typedef ObjectLiteralProperty Property;
2657 2663
2658 DECLARE_NODE_TYPE(ClassLiteral) 2664 DECLARE_NODE_TYPE(ClassLiteral)
2659 2665
2660 Handle<String> name() const { return raw_name_->string(); } 2666 Handle<String> name() const { return raw_name_->string(); }
(...skipping 1037 matching lines...) Expand 10 before | Expand all | Expand 10 after
3698 private: 3704 private:
3699 Zone* zone_; 3705 Zone* zone_;
3700 Visitor visitor_; 3706 Visitor visitor_;
3701 AstValueFactory* ast_value_factory_; 3707 AstValueFactory* ast_value_factory_;
3702 }; 3708 };
3703 3709
3704 3710
3705 } } // namespace v8::internal 3711 } } // namespace v8::internal
3706 3712
3707 #endif // V8_AST_H_ 3713 #endif // V8_AST_H_
OLDNEW
« no previous file with comments | « no previous file | src/code-stubs.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698