2230 {
2231 Deserializer::Local
d(d_);
2232
2234#if !defined(DART_PRECOMPILED_RUNTIME)
2236#endif
2238 FieldPtr field =
static_cast<FieldPtr
>(
d.Ref(
id));
2240 d.ReadFromTo(field);
2241#if !defined(DART_PRECOMPILED_RUNTIME)
2243 field->untag()->guarded_list_length_ =
static_cast<SmiPtr
>(
d.ReadRef());
2245 field->untag()->dependent_code_ =
2246 static_cast<WeakArrayPtr
>(
d.ReadRef());
2247 }
2248 field->untag()->token_pos_ =
d.ReadTokenPosition();
2249 field->untag()->end_token_pos_ =
d.ReadTokenPosition();
2250 field->untag()->guarded_cid_ =
d.ReadCid();
2251 field->untag()->is_nullable_ =
d.ReadCid();
2252 const int8_t static_type_exactness_state =
d.Read<int8_t>();
2253#if defined(TARGET_ARCH_X64)
2254 field->untag()->static_type_exactness_state_ =
2255 static_type_exactness_state;
2256#else
2257
2258
2259
2260
2261
2262 USE(static_type_exactness_state);
2263 field->untag()->static_type_exactness_state_ =
2265#endif
2266 field->untag()->kernel_offset_ =
d.Read<uint32_t>();
2267#endif
2268 field->untag()->kind_bits_ =
d.Read<uint16_t>();
2269
2270 field->untag()->host_offset_or_field_id_ =
2271 static_cast<SmiPtr
>(
d.ReadRef());
2272#if !defined(DART_PRECOMPILED_RUNTIME)
2273 field->untag()->target_offset_ =
2274 Smi::Value(field->untag()->host_offset_or_field_id());
2275#endif
2276 }
2277 }
bool is_canonical() const
static void InitializeHeader(ObjectPtr raw, intptr_t cid, intptr_t size, bool is_canonical=false)