LLVM: llvm::MachO::RecordsSlice Class Reference (original) (raw)

#include "[llvm/TextAPI/RecordsSlice.h](RecordsSlice%5F8h%5Fsource.html)"

Public Member Functions
RecordsSlice (const llvm::Triple &T)
const llvm::Triple & getTriple () const
Get target triple.
const Target & getTarget () const
Get TAPI converted target.
LLVM_ABI Record * addRecord (StringRef Name, SymbolFlags Flags, GlobalRecord::Kind GV=GlobalRecord::Kind::Unknown, RecordLinkage Linkage=RecordLinkage::Unknown)
Add unspecified record to slice.
LLVM_ABI GlobalRecord * addGlobal (StringRef Name, RecordLinkage Linkage, GlobalRecord::Kind GV, SymbolFlags Flags=SymbolFlags::None, bool Inlined=false)
Add non-ObjC global record.
LLVM_ABI ObjCInterfaceRecord * addObjCInterface (StringRef Name, RecordLinkage Linkage, ObjCIFSymbolKind SymType)
Add ObjC Class record.
LLVM_ABI ObjCIVarRecord * addObjCIVar (ObjCContainerRecord *Container, StringRef Name, RecordLinkage Linkage)
Add ObjC IVar record.
LLVM_ABI ObjCCategoryRecord * addObjCCategory (StringRef ClassToExtend, StringRef Category)
Add ObjC Category record.
LLVM_ABI ObjCInterfaceRecord * findObjCInterface (StringRef Name) const
Find ObjC Class.
LLVM_ABI ObjCCategoryRecord * findObjCCategory (StringRef ClassToExtend, StringRef Category) const
Find ObjC Category.
LLVM_ABI ObjCContainerRecord * findContainer (bool IsIVar, StringRef Name) const
Find ObjC Container.
LLVM_ABI ObjCIVarRecord * findObjCIVar (bool IsScopedName, StringRef Name) const
Find ObjC instance variable.
LLVM_ABI GlobalRecord * findGlobal (StringRef Name, GlobalRecord::Kind GV=GlobalRecord::Kind::Unknown) const
Find non-objc global.
bool hasBinaryAttrs () const
bool empty () const
LLVM_ABI void visit (RecordVisitor &V) const
LLVM_ABI BinaryAttrs & getBinaryAttrs ()
Return reference to BinaryAttrs.
LLVM_ABI StringRef copyString (StringRef String)
Store any strings owned by RecordSlice into allocator and return back reference to that.

Definition at line 29 of file RecordsSlice.h.

addGlobal()

addObjCCategory()

Add ObjC Category record.

Parameters

ClassToExtend The name of class that is being extended by the category, not symbol.
Category The name of category.

Returns

The non-owning pointer to added record in slice.

Definition at line 225 of file RecordsSlice.cpp.

References copyString(), and findObjCInterface().

Referenced by addRecord().

addObjCInterface()

Add ObjC Class record.

Parameters

Name The name of class, not symbol.
Linkage The linkage of symbol.
SymType The symbols this class represents.

Returns

The non-owning pointer to added record in slice.

Definition at line 193 of file RecordsSlice.cpp.

References copyString().

Referenced by addRecord().

addObjCIVar()

addRecord()

Add unspecified record to slice.

Assign specific record type based on properties and symbol name.

Parameters

Name The name of symbol.
Flags The flags that describe attributes of the symbol.
GV The kind of global, if this represents a non obj-c global symbol.
Linkage The linkage of symbol.

Returns

The non-owning pointer to added record in slice.

Definition at line 23 of file RecordsSlice.cpp.

References addGlobal(), addObjCCategory(), addObjCInterface(), addObjCIVar(), findContainer(), llvm::MachO::GlobalSymbol, llvm_unreachable, llvm::MachO::ObjectiveCClass, llvm::MachO::ObjectiveCClassEHType, llvm::MachO::ObjectiveCInstanceVariable, llvm::MachO::parseSymbol(), and llvm::MachO::WeakDefined.

copyString()

empty()

bool llvm::MachO::RecordsSlice::empty ( ) const inline

findContainer()

Find ObjC Container.

This is commonly used for assigning for looking up instance variables that are assigned to either a category or class.

Parameters

IsIVar If true, the name is the name of the IVar, otherwise it will be looked up as the name of the container.
Name Either the name of ivar or name of container.

Returns

The non-owning pointer to record in slice.

Definition at line 55 of file RecordsSlice.cpp.

References findObjCCategory(), and findObjCInterface().

Referenced by addRecord(), and findObjCIVar().

findGlobal()

findObjCCategory()

Find ObjC Category.

Parameters

ClassToExtend The name of class, not full symbol name.
Category The name of category.

Returns

The non-owning pointer to record in slice.

Definition at line 135 of file RecordsSlice.cpp.

References findRecord().

Referenced by findContainer().

findObjCInterface()

findObjCIVar()

Find ObjC instance variable.

Parameters

IsScopedName This is used to determine how to parse the name.
Name Either the full name of the symbol or just the ivar.

Returns

The non-owning pointer to record in slice.

Definition at line 145 of file RecordsSlice.cpp.

References _, and findContainer().

getBinaryAttrs()

getTarget()

const Target & llvm::MachO::RecordsSlice::getTarget ( ) const inline

getTriple()

hasBinaryAttrs()

bool llvm::MachO::RecordsSlice::hasBinaryAttrs ( ) const inline

visit()


The documentation for this class was generated from the following files: