| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 #include "vm/kernel_binary_flowgraph.h" | 5 #include "vm/kernel_binary_flowgraph.h" |
| 6 | 6 |
| 7 #include "vm/compiler.h" | 7 #include "vm/compiler.h" |
| 8 #include "vm/longjump.h" | 8 #include "vm/longjump.h" |
| 9 #include "vm/object_store.h" | 9 #include "vm/object_store.h" |
| 10 | 10 |
| (...skipping 1079 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1090 const intptr_t named_count = | 1090 const intptr_t named_count = |
| 1091 builder_->ReadListLength(); // read named_parameters list length. | 1091 builder_->ReadListLength(); // read named_parameters list length. |
| 1092 for (intptr_t i = 0; i < named_count; ++i) { | 1092 for (intptr_t i = 0; i < named_count; ++i) { |
| 1093 // read string reference (i.e. named_parameters[i].name). | 1093 // read string reference (i.e. named_parameters[i].name). |
| 1094 builder_->SkipStringReference(); | 1094 builder_->SkipStringReference(); |
| 1095 VisitDartType(); // read named_parameters[i].type. | 1095 VisitDartType(); // read named_parameters[i].type. |
| 1096 } | 1096 } |
| 1097 } | 1097 } |
| 1098 | 1098 |
| 1099 builder_->SkipListOfStrings(); // read positional parameter names. | 1099 builder_->SkipListOfStrings(); // read positional parameter names. |
| 1100 |
| 1101 if (!simple) { |
| 1102 builder_->SkipCanonicalNameReference(); // read typedef reference. |
| 1103 } |
| 1104 |
| 1100 VisitDartType(); // read return type. | 1105 VisitDartType(); // read return type. |
| 1101 } | 1106 } |
| 1102 | 1107 |
| 1103 void StreamingScopeBuilder::VisitTypeParameterType() { | 1108 void StreamingScopeBuilder::VisitTypeParameterType() { |
| 1104 Function& function = Function::Handle(Z, parsed_function_->function().raw()); | 1109 Function& function = Function::Handle(Z, parsed_function_->function().raw()); |
| 1105 while (function.IsClosureFunction()) { | 1110 while (function.IsClosureFunction()) { |
| 1106 function = function.parent_function(); | 1111 function = function.parent_function(); |
| 1107 } | 1112 } |
| 1108 | 1113 |
| 1109 if (function.IsFactory()) { | 1114 if (function.IsFactory()) { |
| (...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1567 if (result_.IsMalformed()) { | 1572 if (result_.IsMalformed()) { |
| 1568 result_ = AbstractType::dynamic_type().raw(); | 1573 result_ = AbstractType::dynamic_type().raw(); |
| 1569 } | 1574 } |
| 1570 parameter_types.SetAt(pos, result_); | 1575 parameter_types.SetAt(pos, result_); |
| 1571 parameter_names.SetAt(pos, name); | 1576 parameter_names.SetAt(pos, name); |
| 1572 } | 1577 } |
| 1573 } | 1578 } |
| 1574 | 1579 |
| 1575 builder_->SkipListOfStrings(); // read positional parameter names. | 1580 builder_->SkipListOfStrings(); // read positional parameter names. |
| 1576 | 1581 |
| 1582 if (!simple) { |
| 1583 builder_->SkipCanonicalNameReference(); // read typedef reference. |
| 1584 } |
| 1585 |
| 1577 BuildTypeInternal(); // read return type. | 1586 BuildTypeInternal(); // read return type. |
| 1578 if (result_.IsMalformed()) { | 1587 if (result_.IsMalformed()) { |
| 1579 result_ = AbstractType::dynamic_type().raw(); | 1588 result_ = AbstractType::dynamic_type().raw(); |
| 1580 } | 1589 } |
| 1581 signature_function.set_result_type(result_); | 1590 signature_function.set_result_type(result_); |
| 1582 | 1591 |
| 1583 Type& signature_type = | 1592 Type& signature_type = |
| 1584 Type::ZoneHandle(Z, signature_function.SignatureType()); | 1593 Type::ZoneHandle(Z, signature_function.SignatureType()); |
| 1585 | 1594 |
| 1586 if (finalize_) { | 1595 if (finalize_) { |
| (...skipping 2218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3805 const intptr_t named_count = | 3814 const intptr_t named_count = |
| 3806 ReadListLength(); // read named_parameters list length. | 3815 ReadListLength(); // read named_parameters list length. |
| 3807 for (intptr_t i = 0; i < named_count; ++i) { | 3816 for (intptr_t i = 0; i < named_count; ++i) { |
| 3808 // read string reference (i.e. named_parameters[i].name). | 3817 // read string reference (i.e. named_parameters[i].name). |
| 3809 SkipStringReference(); | 3818 SkipStringReference(); |
| 3810 SkipDartType(); // read named_parameters[i].type. | 3819 SkipDartType(); // read named_parameters[i].type. |
| 3811 } | 3820 } |
| 3812 } | 3821 } |
| 3813 | 3822 |
| 3814 SkipListOfStrings(); // read positional parameter names. | 3823 SkipListOfStrings(); // read positional parameter names. |
| 3824 |
| 3825 if (!simple) { |
| 3826 SkipCanonicalNameReference(); // read typedef reference. |
| 3827 } |
| 3828 |
| 3815 SkipDartType(); // read return type. | 3829 SkipDartType(); // read return type. |
| 3816 } | 3830 } |
| 3817 | 3831 |
| 3818 void StreamingFlowGraphBuilder::SkipListOfExpressions() { | 3832 void StreamingFlowGraphBuilder::SkipListOfExpressions() { |
| 3819 intptr_t list_length = ReadListLength(); // read list length. | 3833 intptr_t list_length = ReadListLength(); // read list length. |
| 3820 for (intptr_t i = 0; i < list_length; ++i) { | 3834 for (intptr_t i = 0; i < list_length; ++i) { |
| 3821 SkipExpression(); // read ith expression. | 3835 SkipExpression(); // read ith expression. |
| 3822 } | 3836 } |
| 3823 } | 3837 } |
| 3824 | 3838 |
| (...skipping 3475 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7300 } | 7314 } |
| 7301 } | 7315 } |
| 7302 | 7316 |
| 7303 return Array::Handle(Array::null()); | 7317 return Array::Handle(Array::null()); |
| 7304 } | 7318 } |
| 7305 | 7319 |
| 7306 } // namespace kernel | 7320 } // namespace kernel |
| 7307 } // namespace dart | 7321 } // namespace dart |
| 7308 | 7322 |
| 7309 #endif // !defined(DART_PRECOMPILED_RUNTIME) | 7323 #endif // !defined(DART_PRECOMPILED_RUNTIME) |
| OLD | NEW |