OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 633 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
644 // | 644 // |
645 // function f() { { { var x; } let x; } } | 645 // function f() { { { var x; } let x; } } |
646 // function g() { { var x; let x; } } | 646 // function g() { { var x; let x; } } |
647 // | 647 // |
648 // The var declarations are hoisted to the function scope, but originate from | 648 // The var declarations are hoisted to the function scope, but originate from |
649 // a scope where the name has also been let bound or the var declaration is | 649 // a scope where the name has also been let bound or the var declaration is |
650 // hoisted over such a scope. | 650 // hoisted over such a scope. |
651 void CheckConflictingVarDeclarations(Scope* scope, bool* ok); | 651 void CheckConflictingVarDeclarations(Scope* scope, bool* ok); |
652 | 652 |
653 // Parser support | 653 // Parser support |
654 VariableProxy* Declare(Handle<String> name, Variable::Mode mode, | 654 VariableProxy* Declare(Handle<String> name, VariableMode mode, |
655 FunctionLiteral* fun, | 655 FunctionLiteral* fun, |
656 bool resolve, | 656 bool resolve, |
657 bool* ok); | 657 bool* ok); |
658 | 658 |
659 bool TargetStackContainsLabel(Handle<String> label); | 659 bool TargetStackContainsLabel(Handle<String> label); |
660 BreakableStatement* LookupBreakTarget(Handle<String> label, bool* ok); | 660 BreakableStatement* LookupBreakTarget(Handle<String> label, bool* ok); |
661 IterationStatement* LookupContinueTarget(Handle<String> label, bool* ok); | 661 IterationStatement* LookupContinueTarget(Handle<String> label, bool* ok); |
662 | 662 |
663 void RegisterTargetUse(Label* target, Target* stop); | 663 void RegisterTargetUse(Label* target, Target* stop); |
664 | 664 |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
763 private: | 763 private: |
764 static const int kTypeSlot = 0; | 764 static const int kTypeSlot = 0; |
765 static const int kElementsSlot = 1; | 765 static const int kElementsSlot = 1; |
766 | 766 |
767 DISALLOW_IMPLICIT_CONSTRUCTORS(CompileTimeValue); | 767 DISALLOW_IMPLICIT_CONSTRUCTORS(CompileTimeValue); |
768 }; | 768 }; |
769 | 769 |
770 } } // namespace v8::internal | 770 } } // namespace v8::internal |
771 | 771 |
772 #endif // V8_PARSER_H_ | 772 #endif // V8_PARSER_H_ |
OLD | NEW |