Lines Matching defs:Section

19 ELFYAML::Section::~Section() {}
659 IO.mapOptional("Section", Symbol.Section, StringRef());
672 static void commonSectionMapping(IO &IO, ELFYAML::Section &Section) {
673 IO.mapOptional("Name", Section.Name, StringRef());
674 IO.mapRequired("Type", Section.Type);
675 IO.mapOptional("Flags", Section.Flags, ELFYAML::ELF_SHF(0));
676 IO.mapOptional("Address", Section.Address, Hex64(0));
677 IO.mapOptional("Link", Section.Link, StringRef());
678 IO.mapOptional("AddressAlign", Section.AddressAlign, Hex64(0));
681 static void sectionMapping(IO &IO, ELFYAML::RawContentSection &Section) {
682 commonSectionMapping(IO, Section);
683 IO.mapOptional("Content", Section.Content);
684 IO.mapOptional("Size", Section.Size, Hex64(Section.Content.binary_size()));
687 static void sectionMapping(IO &IO, ELFYAML::RelocationSection &Section) {
688 commonSectionMapping(IO, Section);
689 IO.mapOptional("Info", Section.Info, StringRef());
690 IO.mapOptional("Relocations", Section.Relocations);
693 void MappingTraits<std::unique_ptr<ELFYAML::Section>>::mapping(
694 IO &IO, std::unique_ptr<ELFYAML::Section> &Section) {
697 sectionType = Section->Type;
705 Section.reset(new ELFYAML::RelocationSection());
706 sectionMapping(IO, *cast<ELFYAML::RelocationSection>(Section.get()));
710 Section.reset(new ELFYAML::RawContentSection());
711 sectionMapping(IO, *cast<ELFYAML::RawContentSection>(Section.get()));
715 StringRef MappingTraits<std::unique_ptr<ELFYAML::Section>>::validate(
716 IO &io, std::unique_ptr<ELFYAML::Section> &Section) {
717 const auto *RawSection = dyn_cast<ELFYAML::RawContentSection>(Section.get());
720 return "Section size must be greater or equal to the content size";