| 812 | } |
| 813 | |
| 814 | const ParameterAnnotationsItem* GetParameterAnnotations(const AnnotationsDirectoryItem* anno_dir) |
| 815 | const { |
| 816 | if (anno_dir->parameters_size_ == 0) { |
| 817 | return nullptr; |
| 818 | } |
| 819 | // Skip past the header, field annotations, and method annotations. |
| 820 | const uint8_t* addr = reinterpret_cast<const uint8_t*>(&anno_dir[1]); |
| 821 | addr += anno_dir->fields_size_ * sizeof(FieldAnnotationsItem); |
| 822 | addr += anno_dir->methods_size_ * sizeof(MethodAnnotationsItem); |
| 823 | return reinterpret_cast<const ParameterAnnotationsItem*>(addr); |
| 824 | } |
| 825 | |
| 826 | const AnnotationSetItem* GetFieldAnnotationSetItem(const FieldAnnotationsItem& anno_item) const { |
| 827 | return DataPointer<AnnotationSetItem>(anno_item.annotations_off_); |
nothing calls this directly
no outgoing calls
no test coverage detected