From 9969e70ed879fbfa2bf9fdecf2d9012795bed1a3 Mon Sep 17 00:00:00 2001 From: Peter LaFosse Date: Mon, 22 Apr 2019 15:37:37 -0400 Subject: Add BNGetStructureMemberByName API and add __getitem__ to python Structure API --- type.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'type.cpp') diff --git a/type.cpp b/type.cpp index 8d0ec587..a2075103 100644 --- a/type.cpp +++ b/type.cpp @@ -1092,6 +1092,21 @@ vector Structure::GetMembers() const } +bool Structure::GetMemberByName(const string& name, StructureMember& result) const +{ + BNStructureMember* member = BNGetStructureMemberByName(m_object, name.c_str()); + if (member) + { + result.type = new Type(BNNewTypeReference(member->type)); + result.name = member->name; + result.offset = member->offset; + BNFreeStructureMember(member); + return true; + } + return false; +} + + uint64_t Structure::GetWidth() const { return BNGetStructureWidth(m_object); -- cgit v1.3.1