| 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_OBJECT_H_ | 5 #ifndef VM_OBJECT_H_ |
| 6 #define VM_OBJECT_H_ | 6 #define VM_OBJECT_H_ |
| 7 | 7 |
| 8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
| 9 #include "platform/assert.h" | 9 #include "platform/assert.h" |
| 10 #include "platform/utils.h" | 10 #include "platform/utils.h" |
| (...skipping 4828 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4839 int8_t At(intptr_t index) const { | 4839 int8_t At(intptr_t index) const { |
| 4840 ASSERT((index >= 0) && (index < Length())); | 4840 ASSERT((index >= 0) && (index < Length())); |
| 4841 return raw_ptr()->external_data_->data()[index]; | 4841 return raw_ptr()->external_data_->data()[index]; |
| 4842 } | 4842 } |
| 4843 | 4843 |
| 4844 void SetAt(intptr_t index, int8_t value) const { | 4844 void SetAt(intptr_t index, int8_t value) const { |
| 4845 ASSERT((index >= 0) && (index < Length())); | 4845 ASSERT((index >= 0) && (index < Length())); |
| 4846 raw_ptr()->external_data_->data()[index] = value; | 4846 raw_ptr()->external_data_->data()[index] = value; |
| 4847 } | 4847 } |
| 4848 | 4848 |
| 4849 void* GetData() const { |
| 4850 return raw_ptr()->external_data_->data(); |
| 4851 } |
| 4852 |
| 4849 void* GetPeer() const { | 4853 void* GetPeer() const { |
| 4850 return raw_ptr()->external_data_->peer(); | 4854 return raw_ptr()->external_data_->peer(); |
| 4851 } | 4855 } |
| 4852 | 4856 |
| 4853 static const intptr_t kBytesPerElement = 1; | 4857 static const intptr_t kBytesPerElement = 1; |
| 4854 | 4858 |
| 4855 // Since external arrays may be serialized to non-external ones, | 4859 // Since external arrays may be serialized to non-external ones, |
| 4856 // enforce the same maximum element count. | 4860 // enforce the same maximum element count. |
| 4857 static const intptr_t kMaxElements = Int8Array::kMaxElements; | 4861 static const intptr_t kMaxElements = Int8Array::kMaxElements; |
| 4858 | 4862 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4893 uint8_t At(intptr_t index) const { | 4897 uint8_t At(intptr_t index) const { |
| 4894 ASSERT((index >= 0) && (index < Length())); | 4898 ASSERT((index >= 0) && (index < Length())); |
| 4895 return raw_ptr()->external_data_->data()[index]; | 4899 return raw_ptr()->external_data_->data()[index]; |
| 4896 } | 4900 } |
| 4897 | 4901 |
| 4898 void SetAt(intptr_t index, uint8_t value) const { | 4902 void SetAt(intptr_t index, uint8_t value) const { |
| 4899 ASSERT((index >= 0) && (index < Length())); | 4903 ASSERT((index >= 0) && (index < Length())); |
| 4900 raw_ptr()->external_data_->data()[index] = value; | 4904 raw_ptr()->external_data_->data()[index] = value; |
| 4901 } | 4905 } |
| 4902 | 4906 |
| 4907 void* GetData() const { |
| 4908 return raw_ptr()->external_data_->data(); |
| 4909 } |
| 4910 |
| 4903 void* GetPeer() const { | 4911 void* GetPeer() const { |
| 4904 return raw_ptr()->external_data_->peer(); | 4912 return raw_ptr()->external_data_->peer(); |
| 4905 } | 4913 } |
| 4906 | 4914 |
| 4907 static const intptr_t kBytesPerElement = 1; | 4915 static const intptr_t kBytesPerElement = 1; |
| 4908 | 4916 |
| 4909 // Since external arrays may be serialized to non-external ones, | 4917 // Since external arrays may be serialized to non-external ones, |
| 4910 // enforce the same maximum element count. | 4918 // enforce the same maximum element count. |
| 4911 static const intptr_t kMaxElements = Uint8Array::kMaxElements; | 4919 static const intptr_t kMaxElements = Uint8Array::kMaxElements; |
| 4912 | 4920 |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4948 int16_t At(intptr_t index) const { | 4956 int16_t At(intptr_t index) const { |
| 4949 ASSERT((index >= 0) && (index < Length())); | 4957 ASSERT((index >= 0) && (index < Length())); |
| 4950 return raw_ptr()->external_data_->data()[index]; | 4958 return raw_ptr()->external_data_->data()[index]; |
| 4951 } | 4959 } |
| 4952 | 4960 |
| 4953 void SetAt(intptr_t index, int16_t value) const { | 4961 void SetAt(intptr_t index, int16_t value) const { |
| 4954 ASSERT((index >= 0) && (index < Length())); | 4962 ASSERT((index >= 0) && (index < Length())); |
| 4955 raw_ptr()->external_data_->data()[index] = value; | 4963 raw_ptr()->external_data_->data()[index] = value; |
| 4956 } | 4964 } |
| 4957 | 4965 |
| 4966 void* GetData() const { |
| 4967 return raw_ptr()->external_data_->data(); |
| 4968 } |
| 4969 |
| 4958 void* GetPeer() const { | 4970 void* GetPeer() const { |
| 4959 return raw_ptr()->external_data_->peer(); | 4971 return raw_ptr()->external_data_->peer(); |
| 4960 } | 4972 } |
| 4961 | 4973 |
| 4962 static const intptr_t kBytesPerElement = 2; | 4974 static const intptr_t kBytesPerElement = 2; |
| 4963 | 4975 |
| 4964 // Since external arrays may be serialized to non-external ones, | 4976 // Since external arrays may be serialized to non-external ones, |
| 4965 // enforce the same maximum element count. | 4977 // enforce the same maximum element count. |
| 4966 static const intptr_t kMaxElements = Int16Array::kMaxElements; | 4978 static const intptr_t kMaxElements = Int16Array::kMaxElements; |
| 4967 | 4979 |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5060 int32_t At(intptr_t index) const { | 5072 int32_t At(intptr_t index) const { |
| 5061 ASSERT((index >= 0) && (index < Length())); | 5073 ASSERT((index >= 0) && (index < Length())); |
| 5062 return raw_ptr()->external_data_->data()[index]; | 5074 return raw_ptr()->external_data_->data()[index]; |
| 5063 } | 5075 } |
| 5064 | 5076 |
| 5065 void SetAt(intptr_t index, int32_t value) const { | 5077 void SetAt(intptr_t index, int32_t value) const { |
| 5066 ASSERT((index >= 0) && (index < Length())); | 5078 ASSERT((index >= 0) && (index < Length())); |
| 5067 raw_ptr()->external_data_->data()[index] = value; | 5079 raw_ptr()->external_data_->data()[index] = value; |
| 5068 } | 5080 } |
| 5069 | 5081 |
| 5082 void* GetData() const { |
| 5083 return raw_ptr()->external_data_->data(); |
| 5084 } |
| 5085 |
| 5070 void* GetPeer() const { | 5086 void* GetPeer() const { |
| 5071 return raw_ptr()->external_data_->peer(); | 5087 return raw_ptr()->external_data_->peer(); |
| 5072 } | 5088 } |
| 5073 | 5089 |
| 5074 static const intptr_t kBytesPerElement = 4; | 5090 static const intptr_t kBytesPerElement = 4; |
| 5075 | 5091 |
| 5076 // Since external arrays may be serialized to non-external ones, | 5092 // Since external arrays may be serialized to non-external ones, |
| 5077 // enforce the same maximum element count. | 5093 // enforce the same maximum element count. |
| 5078 static const intptr_t kMaxElements = Int32Array::kMaxElements; | 5094 static const intptr_t kMaxElements = Int32Array::kMaxElements; |
| 5079 | 5095 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5114 int32_t At(intptr_t index) const { | 5130 int32_t At(intptr_t index) const { |
| 5115 ASSERT((index >= 0) && (index < Length())); | 5131 ASSERT((index >= 0) && (index < Length())); |
| 5116 return raw_ptr()->external_data_->data()[index]; | 5132 return raw_ptr()->external_data_->data()[index]; |
| 5117 } | 5133 } |
| 5118 | 5134 |
| 5119 void SetAt(intptr_t index, int32_t value) const { | 5135 void SetAt(intptr_t index, int32_t value) const { |
| 5120 ASSERT((index >= 0) && (index < Length())); | 5136 ASSERT((index >= 0) && (index < Length())); |
| 5121 raw_ptr()->external_data_->data()[index] = value; | 5137 raw_ptr()->external_data_->data()[index] = value; |
| 5122 } | 5138 } |
| 5123 | 5139 |
| 5140 void* GetData() const { |
| 5141 return raw_ptr()->external_data_->data(); |
| 5142 } |
| 5143 |
| 5124 void* GetPeer() const { | 5144 void* GetPeer() const { |
| 5125 return raw_ptr()->external_data_->peer(); | 5145 return raw_ptr()->external_data_->peer(); |
| 5126 } | 5146 } |
| 5127 | 5147 |
| 5128 static const intptr_t kBytesPerElement = 4; | 5148 static const intptr_t kBytesPerElement = 4; |
| 5129 | 5149 |
| 5130 // Since external arrays may be serialized to non-external ones, | 5150 // Since external arrays may be serialized to non-external ones, |
| 5131 // enforce the same maximum element count. | 5151 // enforce the same maximum element count. |
| 5132 static const intptr_t kMaxElements = Uint32Array::kMaxElements; | 5152 static const intptr_t kMaxElements = Uint32Array::kMaxElements; |
| 5133 | 5153 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5168 int64_t At(intptr_t index) const { | 5188 int64_t At(intptr_t index) const { |
| 5169 ASSERT((index >= 0) && (index < Length())); | 5189 ASSERT((index >= 0) && (index < Length())); |
| 5170 return raw_ptr()->external_data_->data()[index]; | 5190 return raw_ptr()->external_data_->data()[index]; |
| 5171 } | 5191 } |
| 5172 | 5192 |
| 5173 void SetAt(intptr_t index, int64_t value) const { | 5193 void SetAt(intptr_t index, int64_t value) const { |
| 5174 ASSERT((index >= 0) && (index < Length())); | 5194 ASSERT((index >= 0) && (index < Length())); |
| 5175 raw_ptr()->external_data_->data()[index] = value; | 5195 raw_ptr()->external_data_->data()[index] = value; |
| 5176 } | 5196 } |
| 5177 | 5197 |
| 5198 void* GetData() const { |
| 5199 return raw_ptr()->external_data_->data(); |
| 5200 } |
| 5201 |
| 5178 void* GetPeer() const { | 5202 void* GetPeer() const { |
| 5179 return raw_ptr()->external_data_->peer(); | 5203 return raw_ptr()->external_data_->peer(); |
| 5180 } | 5204 } |
| 5181 | 5205 |
| 5182 static const intptr_t kBytesPerElement = 8; | 5206 static const intptr_t kBytesPerElement = 8; |
| 5183 | 5207 |
| 5184 // Since external arrays may be serialized to non-external ones, | 5208 // Since external arrays may be serialized to non-external ones, |
| 5185 // enforce the same maximum element count. | 5209 // enforce the same maximum element count. |
| 5186 static const intptr_t kMaxElements = Int64Array::kMaxElements; | 5210 static const intptr_t kMaxElements = Int64Array::kMaxElements; |
| 5187 | 5211 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5222 int64_t At(intptr_t index) const { | 5246 int64_t At(intptr_t index) const { |
| 5223 ASSERT((index >= 0) && (index < Length())); | 5247 ASSERT((index >= 0) && (index < Length())); |
| 5224 return raw_ptr()->external_data_->data()[index]; | 5248 return raw_ptr()->external_data_->data()[index]; |
| 5225 } | 5249 } |
| 5226 | 5250 |
| 5227 void SetAt(intptr_t index, int64_t value) const { | 5251 void SetAt(intptr_t index, int64_t value) const { |
| 5228 ASSERT((index >= 0) && (index < Length())); | 5252 ASSERT((index >= 0) && (index < Length())); |
| 5229 raw_ptr()->external_data_->data()[index] = value; | 5253 raw_ptr()->external_data_->data()[index] = value; |
| 5230 } | 5254 } |
| 5231 | 5255 |
| 5256 void* GetData() const { |
| 5257 return raw_ptr()->external_data_->data(); |
| 5258 } |
| 5259 |
| 5232 void* GetPeer() const { | 5260 void* GetPeer() const { |
| 5233 return raw_ptr()->external_data_->peer(); | 5261 return raw_ptr()->external_data_->peer(); |
| 5234 } | 5262 } |
| 5235 | 5263 |
| 5236 static const intptr_t kBytesPerElement = 8; | 5264 static const intptr_t kBytesPerElement = 8; |
| 5237 | 5265 |
| 5238 // Since external arrays may be serialized to non-external ones, | 5266 // Since external arrays may be serialized to non-external ones, |
| 5239 // enforce the same maximum element count. | 5267 // enforce the same maximum element count. |
| 5240 static const intptr_t kMaxElements = Uint64Array::kMaxElements; | 5268 static const intptr_t kMaxElements = Uint64Array::kMaxElements; |
| 5241 | 5269 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5276 float At(intptr_t index) const { | 5304 float At(intptr_t index) const { |
| 5277 ASSERT((index >= 0) && (index < Length())); | 5305 ASSERT((index >= 0) && (index < Length())); |
| 5278 return raw_ptr()->external_data_->data()[index]; | 5306 return raw_ptr()->external_data_->data()[index]; |
| 5279 } | 5307 } |
| 5280 | 5308 |
| 5281 void SetAt(intptr_t index, float value) const { | 5309 void SetAt(intptr_t index, float value) const { |
| 5282 ASSERT((index >= 0) && (index < Length())); | 5310 ASSERT((index >= 0) && (index < Length())); |
| 5283 raw_ptr()->external_data_->data()[index] = value; | 5311 raw_ptr()->external_data_->data()[index] = value; |
| 5284 } | 5312 } |
| 5285 | 5313 |
| 5314 void* GetData() const { |
| 5315 return raw_ptr()->external_data_->data(); |
| 5316 } |
| 5317 |
| 5286 void* GetPeer() const { | 5318 void* GetPeer() const { |
| 5287 return raw_ptr()->external_data_->peer(); | 5319 return raw_ptr()->external_data_->peer(); |
| 5288 } | 5320 } |
| 5289 | 5321 |
| 5290 static const intptr_t kBytesPerElement = 4; | 5322 static const intptr_t kBytesPerElement = 4; |
| 5291 | 5323 |
| 5292 // Since external arrays may be serialized to non-external ones, | 5324 // Since external arrays may be serialized to non-external ones, |
| 5293 // enforce the same maximum element count. | 5325 // enforce the same maximum element count. |
| 5294 static const intptr_t kMaxElements = Float32Array::kMaxElements; | 5326 static const intptr_t kMaxElements = Float32Array::kMaxElements; |
| 5295 | 5327 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5330 double At(intptr_t index) const { | 5362 double At(intptr_t index) const { |
| 5331 ASSERT((index >= 0) && (index < Length())); | 5363 ASSERT((index >= 0) && (index < Length())); |
| 5332 return raw_ptr()->external_data_->data()[index]; | 5364 return raw_ptr()->external_data_->data()[index]; |
| 5333 } | 5365 } |
| 5334 | 5366 |
| 5335 void SetAt(intptr_t index, double value) const { | 5367 void SetAt(intptr_t index, double value) const { |
| 5336 ASSERT((index >= 0) && (index < Length())); | 5368 ASSERT((index >= 0) && (index < Length())); |
| 5337 raw_ptr()->external_data_->data()[index] = value; | 5369 raw_ptr()->external_data_->data()[index] = value; |
| 5338 } | 5370 } |
| 5339 | 5371 |
| 5372 void* GetData() const { |
| 5373 return raw_ptr()->external_data_->data(); |
| 5374 } |
| 5375 |
| 5340 void* GetPeer() const { | 5376 void* GetPeer() const { |
| 5341 return raw_ptr()->external_data_->peer(); | 5377 return raw_ptr()->external_data_->peer(); |
| 5342 } | 5378 } |
| 5343 | 5379 |
| 5344 static const intptr_t kBytesPerElement = 8; | 5380 static const intptr_t kBytesPerElement = 8; |
| 5345 | 5381 |
| 5346 // Since external arrays may be serialized to non-external ones, | 5382 // Since external arrays may be serialized to non-external ones, |
| 5347 // enforce the same maximum element count. | 5383 // enforce the same maximum element count. |
| 5348 static const intptr_t kMaxElements = Float64Array::kMaxElements; | 5384 static const intptr_t kMaxElements = Float64Array::kMaxElements; |
| 5349 | 5385 |
| (...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5695 if (this->CharAt(i) != str.CharAt(begin_index + i)) { | 5731 if (this->CharAt(i) != str.CharAt(begin_index + i)) { |
| 5696 return false; | 5732 return false; |
| 5697 } | 5733 } |
| 5698 } | 5734 } |
| 5699 return true; | 5735 return true; |
| 5700 } | 5736 } |
| 5701 | 5737 |
| 5702 } // namespace dart | 5738 } // namespace dart |
| 5703 | 5739 |
| 5704 #endif // VM_OBJECT_H_ | 5740 #endif // VM_OBJECT_H_ |
| OLD | NEW |