// Name: The null-terminated name follows.
};
-// LF_CLASS, LF_STRUCT, LF_INTERFACE
+// LF_CLASS, LF_STRUCTURE, LF_INTERFACE
struct ClassType {
ulittle16_t MemberCount; // Number of members in FieldList.
ulittle16_t Properties; // ClassOptions bitset
bool isIntroducedVirtual() const { return Attrs.isIntroducedVirtual(); }
};
+// LF_METHODLIST
struct MethodListEntry {
MemberAttributes Attrs;
ulittle16_t Padding;
// BaseOffset: LF_NUMERIC encoded byte offset of base from derived.
};
-// LF_VBCLASS | LV_IVBCLASS
+// LF_VBCLASS, LF_IVBCLASS
struct VirtualBaseClass {
MemberAttributes Attrs; // Access control attributes, etc.
TypeIndex BaseType; // Base class type
: CVTD(CVTD), W(W), PrintRecordBytes(PrintRecordBytes) {}
/// CVTypeVisitor overrides.
- /// FIXME: Bury these in the .cc file to hide implementation details.
#define TYPE_RECORD(ClassName, LeafEnum) \
void visit##ClassName(TypeLeafKind LeafType, const ClassName *Record, \
ArrayRef<uint8_t> LeafData);