| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef VM_PARSER_H_ | 5 #ifndef VM_PARSER_H_ |
| 6 #define VM_PARSER_H_ | 6 #define VM_PARSER_H_ |
| 7 | 7 |
| 8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
| 9 | 9 |
| 10 #include "platform/assert.h" | 10 #include "platform/assert.h" |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 } | 118 } |
| 119 void set_finally_return_temp_var(LocalVariable* value) { | 119 void set_finally_return_temp_var(LocalVariable* value) { |
| 120 ASSERT(!has_finally_return_temp_var()); | 120 ASSERT(!has_finally_return_temp_var()); |
| 121 finally_return_temp_var_ = value; | 121 finally_return_temp_var_ = value; |
| 122 } | 122 } |
| 123 bool has_finally_return_temp_var() const { | 123 bool has_finally_return_temp_var() const { |
| 124 return finally_return_temp_var_ != NULL; | 124 return finally_return_temp_var_ != NULL; |
| 125 } | 125 } |
| 126 void EnsureFinallyReturnTemp(); | 126 void EnsureFinallyReturnTemp(); |
| 127 | 127 |
| 128 static LocalVariable* CreateExpressionTempVar(intptr_t token_pos); | |
| 129 LocalVariable* EnsureExpressionTemp(); | 128 LocalVariable* EnsureExpressionTemp(); |
| 129 LocalVariable* EnsureSavedCurrentContext(); |
| 130 | 130 |
| 131 bool HasDeferredPrefixes() const { return deferred_prefixes_->length() != 0; } | 131 bool HasDeferredPrefixes() const { return deferred_prefixes_->length() != 0; } |
| 132 ZoneGrowableArray<const LibraryPrefix*>* deferred_prefixes() const { | 132 ZoneGrowableArray<const LibraryPrefix*>* deferred_prefixes() const { |
| 133 return deferred_prefixes_; | 133 return deferred_prefixes_; |
| 134 } | 134 } |
| 135 void AddDeferredPrefix(const LibraryPrefix& prefix); | 135 void AddDeferredPrefix(const LibraryPrefix& prefix); |
| 136 | 136 |
| 137 int first_parameter_index() const { return first_parameter_index_; } | 137 int first_parameter_index() const { return first_parameter_index_; } |
| 138 int first_stack_local_index() const { return first_stack_local_index_; } | 138 int first_stack_local_index() const { return first_stack_local_index_; } |
| 139 int num_copied_params() const { return num_copied_params_; } | 139 int num_copied_params() const { return num_copied_params_; } |
| (...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 726 const Function* func); | 726 const Function* func); |
| 727 | 727 |
| 728 void SetupSavedTryContext(LocalVariable* saved_try_context); | 728 void SetupSavedTryContext(LocalVariable* saved_try_context); |
| 729 void RestoreSavedTryContext(LocalScope* saved_try_context_scope, | 729 void RestoreSavedTryContext(LocalScope* saved_try_context_scope, |
| 730 int16_t try_index, | 730 int16_t try_index, |
| 731 SequenceNode* target); | 731 SequenceNode* target); |
| 732 | 732 |
| 733 void CheckOperatorArity(const MemberDesc& member); | 733 void CheckOperatorArity(const MemberDesc& member); |
| 734 | 734 |
| 735 void EnsureExpressionTemp(); | 735 void EnsureExpressionTemp(); |
| 736 void EnsureContextVar(); |
| 736 void EnsureSavedCurrentContext(); | 737 void EnsureSavedCurrentContext(); |
| 737 bool IsLegalAssignableSyntax(AstNode* expr, intptr_t end_pos); | 738 bool IsLegalAssignableSyntax(AstNode* expr, intptr_t end_pos); |
| 738 AstNode* CreateAssignmentNode(AstNode* original, | 739 AstNode* CreateAssignmentNode(AstNode* original, |
| 739 AstNode* rhs, | 740 AstNode* rhs, |
| 740 const String* left_ident, | 741 const String* left_ident, |
| 741 intptr_t left_pos); | 742 intptr_t left_pos); |
| 742 AstNode* InsertClosureCallNodes(AstNode* condition); | 743 AstNode* InsertClosureCallNodes(AstNode* condition); |
| 743 | 744 |
| 744 ConstructorCallNode* CreateConstructorCallNode( | 745 ConstructorCallNode* CreateConstructorCallNode( |
| 745 intptr_t token_pos, | 746 intptr_t token_pos, |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 813 bool unregister_pending_function_; | 814 bool unregister_pending_function_; |
| 814 | 815 |
| 815 LocalScope* async_temp_scope_; | 816 LocalScope* async_temp_scope_; |
| 816 | 817 |
| 817 DISALLOW_COPY_AND_ASSIGN(Parser); | 818 DISALLOW_COPY_AND_ASSIGN(Parser); |
| 818 }; | 819 }; |
| 819 | 820 |
| 820 } // namespace dart | 821 } // namespace dart |
| 821 | 822 |
| 822 #endif // VM_PARSER_H_ | 823 #endif // VM_PARSER_H_ |
| OLD | NEW |