• Home
  • Raw
  • Download

Lines Matching full:field

20 #include "runtime/include/field.h"
168 inline Span<Field> Class::GetFields() const in GetFields()
183 inline Field *Class::FindDeclaredField(Pred pred) const in FindDeclaredField()
193 ALWAYS_INLINE inline Field *BinarySearchField(Span<Field> fields, panda_file::File::EntityId id) in BinarySearchField()
195 …auto comp = [](const Field &field, panda_file::File::EntityId field_id) { return field.GetFileId()… in BinarySearchField()
204 inline Field *Class::FindDeclaredField(panda_file::File::EntityId id) const in FindDeclaredField()
219 auto *field = BinarySearchField(fields, id); in FindDeclaredField() local
220 if (field != nullptr) { in FindDeclaredField()
221 return field; in FindDeclaredField()
229 inline Field *Class::FindField(Pred pred) const in FindField()
233 auto *field = cls->FindDeclaredField<filter>(pred); in FindField() local
234 if (field != nullptr) { in FindField()
235 return field; in FindField()
245 auto *field = iface->FindField<filter>(pred); in FindField() local
246 if (field != nullptr) { in FindField()
247 return field; in FindField()
373 inline Field *Class::FindInstanceField(Pred pred) const in FindInstanceField()
378 inline Field *Class::FindInstanceFieldById(panda_file::File::EntityId id) const in FindInstanceFieldById()
384 inline Field *Class::FindStaticField(Pred pred) const in FindStaticField()
389 inline Field *Class::FindStaticFieldById(panda_file::File::EntityId id) const in FindStaticFieldById()
395 inline Field *Class::FindField(Pred pred) const in FindField()
401 inline Field *Class::FindDeclaredField(Pred pred) const in FindDeclaredField()
406 inline Field *Class::GetInstanceFieldByName(const uint8_t *mutf8_name) const in GetInstanceFieldByName()
409 return FindInstanceField([sd](const Field &field) { return field.GetName() == sd; }); in GetInstanceFieldByName()
412 inline Field *Class::GetStaticFieldByName(const uint8_t *mutf8_name) const in GetStaticFieldByName()
415 return FindStaticField([sd](const Field &field) { return field.GetName() == sd; }); in GetStaticFieldByName()
423 inline Field *Class::GetDeclaredFieldByName(const uint8_t *mutf8_name) const in GetDeclaredFieldByName()
426 return FindDeclaredField([sd](const Field &field) { return field.GetName() == sd; }); in GetDeclaredFieldByName()
642 …sily check state & get fields because state can be changed concurrently and checking on every field in GetFieldObject()
643 // is too expensive and it should be atomic {check state, get field} in GetFieldObject()
658 inline T Class::GetFieldPrimitive(const Field &field) const in GetFieldPrimitive() argument
660 return ObjectAccessor::GetFieldPrimitive<T>(this, field); in GetFieldPrimitive()
664 inline void Class::SetFieldPrimitive(const Field &field, T value) in SetFieldPrimitive() argument
666 ObjectAccessor::SetFieldPrimitive(this, field, value); in SetFieldPrimitive()
670 inline ObjectHeader *Class::GetFieldObject(const Field &field) const in GetFieldObject() argument
672 return ObjectAccessor::GetFieldObject<need_read_barrier>(this, field); in GetFieldObject()
676 inline void Class::SetFieldObject(const Field &field, ObjectHeader *value) in SetFieldObject() argument
680 auto offset = field.GetOffset() + (ToUintPtr(this) - ToUintPtr(object)); in SetFieldObject()
681 if (UNLIKELY(field.IsVolatile())) { in SetFieldObject()
689 inline ObjectHeader *Class::GetFieldObject(ManagedThread *thread, const Field &field) const in GetFieldObject() argument
691 return ObjectAccessor::GetFieldObject<need_read_barrier>(thread, this, field); in GetFieldObject()
695 inline void Class::SetFieldObject(ManagedThread *thread, const Field &field, ObjectHeader *value) in SetFieldObject() argument
699 auto offset = field.GetOffset() + (ToUintPtr(this) - ToUintPtr(object)); in SetFieldObject()
700 if (UNLIKELY(field.IsVolatile())) { in SetFieldObject()