| 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 #if !defined(DART_PRECOMPILED_RUNTIME) | 4 #if !defined(DART_PRECOMPILED_RUNTIME) |
| 5 | 5 |
| 6 #include "vm/kernel_binary.h" | 6 #include "vm/kernel_binary.h" |
| 7 #include "platform/globals.h" | 7 #include "platform/globals.h" |
| 8 #include "vm/flags.h" | 8 #include "vm/flags.h" |
| 9 #include "vm/growable_array.h" | 9 #include "vm/growable_array.h" |
| 10 #include "vm/kernel.h" | 10 #include "vm/kernel.h" |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 222 type_parameters_.ReadFrom(reader); | 222 type_parameters_.ReadFrom(reader); |
| 223 type_ = DartType::ReadFrom(reader); | 223 type_ = DartType::ReadFrom(reader); |
| 224 | 224 |
| 225 return this; | 225 return this; |
| 226 } | 226 } |
| 227 | 227 |
| 228 | 228 |
| 229 Class* Class::ReadFrom(Reader* reader) { | 229 Class* Class::ReadFrom(Reader* reader) { |
| 230 TRACE_READ_OFFSET(); | 230 TRACE_READ_OFFSET(); |
| 231 | 231 |
| 232 kernel_offset_ = reader->offset() - 1; // -1 to include tag byte. |
| 232 canonical_name_ = reader->ReadCanonicalNameReference(); | 233 canonical_name_ = reader->ReadCanonicalNameReference(); |
| 233 position_ = reader->ReadPosition(false); | 234 position_ = reader->ReadPosition(false); |
| 234 is_abstract_ = reader->ReadBool(); | 235 is_abstract_ = reader->ReadBool(); |
| 235 name_index_ = StringIndex(reader->ReadUInt()); | 236 name_index_ = StringIndex(reader->ReadUInt()); |
| 236 source_uri_index_ = reader->ReadUInt(); | 237 source_uri_index_ = reader->ReadUInt(); |
| 237 reader->set_current_script_id(source_uri_index_); | 238 reader->set_current_script_id(source_uri_index_); |
| 238 reader->record_token_position(position_); | 239 reader->record_token_position(position_); |
| 239 annotations_.ReadFromStatic<Expression>(reader); | 240 annotations_.ReadFromStatic<Expression>(reader); |
| 240 | 241 |
| 241 can_stream_ = annotations_.CanStream(); | 242 can_stream_ = annotations_.CanStream(); |
| (...skipping 1557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1799 Tag tag = reader->ReadTag(); | 1800 Tag tag = reader->ReadTag(); |
| 1800 ASSERT(tag == kFunctionNode); | 1801 ASSERT(tag == kFunctionNode); |
| 1801 function->position_ = reader->ReadPosition(); | 1802 function->position_ = reader->ReadPosition(); |
| 1802 function->end_position_ = reader->ReadPosition(); | 1803 function->end_position_ = reader->ReadPosition(); |
| 1803 function->async_marker_ = | 1804 function->async_marker_ = |
| 1804 static_cast<FunctionNode::AsyncMarker>(reader->ReadByte()); | 1805 static_cast<FunctionNode::AsyncMarker>(reader->ReadByte()); |
| 1805 function->dart_async_marker_ = | 1806 function->dart_async_marker_ = |
| 1806 static_cast<FunctionNode::AsyncMarker>(reader->ReadByte()); | 1807 static_cast<FunctionNode::AsyncMarker>(reader->ReadByte()); |
| 1807 function->type_parameters().ReadFrom(reader); | 1808 function->type_parameters().ReadFrom(reader); |
| 1808 function->required_parameter_count_ = reader->ReadUInt(); | 1809 function->required_parameter_count_ = reader->ReadUInt(); |
| 1810 reader->ReadUInt(); // total parameter count. |
| 1809 function->positional_parameters().ReadFromStatic<VariableDeclarationImpl>( | 1811 function->positional_parameters().ReadFromStatic<VariableDeclarationImpl>( |
| 1810 reader); | 1812 reader); |
| 1811 function->named_parameters().ReadFromStatic<VariableDeclarationImpl>(reader); | 1813 function->named_parameters().ReadFromStatic<VariableDeclarationImpl>(reader); |
| 1812 function->return_type_ = DartType::ReadFrom(reader); | 1814 function->return_type_ = DartType::ReadFrom(reader); |
| 1813 | 1815 |
| 1814 LabelScope<ReaderHelper, BlockStack<LabeledStatement> > labels( | 1816 LabelScope<ReaderHelper, BlockStack<LabeledStatement> > labels( |
| 1815 reader->helper()); | 1817 reader->helper()); |
| 1816 VariableScope<ReaderHelper> vars(reader->helper()); | 1818 VariableScope<ReaderHelper> vars(reader->helper()); |
| 1817 function->body_ = reader->ReadOptional<Statement>(); | 1819 function->body_ = reader->ReadOptional<Statement>(); |
| 1818 | 1820 |
| (...skipping 20 matching lines...) Expand all Loading... |
| 1839 | 1841 |
| 1840 kernel::Program* ReadPrecompiledKernelFromBuffer(const uint8_t* buffer, | 1842 kernel::Program* ReadPrecompiledKernelFromBuffer(const uint8_t* buffer, |
| 1841 intptr_t buffer_length) { | 1843 intptr_t buffer_length) { |
| 1842 kernel::Reader reader(buffer, buffer_length); | 1844 kernel::Reader reader(buffer, buffer_length); |
| 1843 return kernel::Program::ReadFrom(&reader); | 1845 return kernel::Program::ReadFrom(&reader); |
| 1844 } | 1846 } |
| 1845 | 1847 |
| 1846 | 1848 |
| 1847 } // namespace dart | 1849 } // namespace dart |
| 1848 #endif // !defined(DART_PRECOMPILED_RUNTIME) | 1850 #endif // !defined(DART_PRECOMPILED_RUNTIME) |
| OLD | NEW |