LLVM 20.0.0git
|
#include "llvm/TextAPI/RecordsSlice.h"
Classes | |
struct | BinaryAttrs |
Definition at line 28 of file RecordsSlice.h.
|
inline |
Definition at line 30 of file RecordsSlice.h.
GlobalRecord * RecordsSlice::addGlobal | ( | StringRef | Name, |
RecordLinkage | Linkage, | ||
GlobalRecord::Kind | GV, | ||
SymbolFlags | Flags = SymbolFlags::None , |
||
bool | Inlined = false |
||
) |
Add non-ObjC global record.
Name | The name of symbol. |
Linkage | The linkage of symbol. |
GV | The kind of global. |
Flags | The flags that describe attributes of the symbol. |
Inlined | Whether declaration is inlined, only applicable to functions. |
Definition at line 173 of file RecordsSlice.cpp.
References copyString(), llvm::MachO::Data, llvm::MachO::GlobalRecord::Function, Name, llvm::MachO::Text, and llvm::MachO::GlobalRecord::Variable.
Referenced by addRecord().
ObjCCategoryRecord * RecordsSlice::addObjCCategory | ( | StringRef | ClassToExtend, |
StringRef | Category | ||
) |
Add ObjC Category record.
ClassToExtend | The name of class that is being extended by the category, not symbol. |
Category | The name of category. |
Definition at line 225 of file RecordsSlice.cpp.
References copyString(), and findObjCInterface().
Referenced by addRecord().
ObjCInterfaceRecord * RecordsSlice::addObjCInterface | ( | StringRef | Name, |
RecordLinkage | Linkage, | ||
ObjCIFSymbolKind | SymType | ||
) |
Add ObjC Class record.
Name | The name of class, not symbol. |
Linkage | The linkage of symbol. |
SymType | The symbols this class represents. |
Definition at line 193 of file RecordsSlice.cpp.
References copyString(), and Name.
Referenced by addRecord().
ObjCIVarRecord * RecordsSlice::addObjCIVar | ( | ObjCContainerRecord * | Container, |
StringRef | Name, | ||
RecordLinkage | Linkage | ||
) |
Add ObjC IVar record.
Container | Owning pointer for instance variable. |
Name | The name of ivar, not symbol. |
Linkage | The linkage of symbol. |
Definition at line 269 of file RecordsSlice.cpp.
References llvm::MachO::ObjCContainerRecord::addObjCIVar(), copyString(), and Name.
Referenced by addRecord().
Record * RecordsSlice::addRecord | ( | StringRef | Name, |
SymbolFlags | Flags, | ||
GlobalRecord::Kind | GV = GlobalRecord::Kind::Unknown , |
||
RecordLinkage | Linkage = RecordLinkage::Unknown |
||
) |
Add unspecified record to slice.
Assign specific record type based on properties and symbol name.
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. |
Definition at line 23 of file RecordsSlice.cpp.
References addGlobal(), addObjCCategory(), addObjCInterface(), addObjCIVar(), findContainer(), llvm::MachO::GlobalSymbol, llvm_unreachable, Name, llvm::MachO::ObjectiveCClass, llvm::MachO::ObjectiveCClassEHType, llvm::MachO::ObjectiveCInstanceVariable, llvm::MachO::parseSymbol(), and llvm::MachO::WeakDefined.
Store any strings owned by RecordSlice into allocator and return back reference to that.
Definition at line 278 of file RecordsSlice.cpp.
References llvm::BumpPtrAllocatorImpl< AllocatorT, SlabSize, SizeThreshold, GrowthDelay >::Allocate(), llvm::BumpPtrAllocatorImpl< AllocatorT, SlabSize, SizeThreshold, GrowthDelay >::identifyObject(), Ptr, and llvm::String.
Referenced by addGlobal(), addObjCCategory(), addObjCInterface(), and addObjCIVar().
|
inline |
Definition at line 135 of file RecordsSlice.h.
References hasBinaryAttrs().
ObjCContainerRecord * RecordsSlice::findContainer | ( | bool | IsIVar, |
StringRef | Name | ||
) | const |
Find ObjC Container.
This is commonly used for assigning for looking up instance variables that are assigned to either a category or class.
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. |
Definition at line 55 of file RecordsSlice.cpp.
References findObjCCategory(), findObjCInterface(), and Name.
Referenced by addRecord(), and findObjCIVar().
GlobalRecord * RecordsSlice::findGlobal | ( | StringRef | Name, |
GlobalRecord::Kind | GV = GlobalRecord::Kind::Unknown |
||
) | const |
Find non-objc global.
Name | The name of symbol. |
GV | The Kind of global to find. |
Definition at line 74 of file RecordsSlice.cpp.
References llvm::MachO::GlobalRecord::Function, Name, llvm::MachO::GlobalRecord::Unknown, and llvm::MachO::GlobalRecord::Variable.
ObjCCategoryRecord * RecordsSlice::findObjCCategory | ( | StringRef | ClassToExtend, |
StringRef | Category | ||
) | const |
Find ObjC Category.
ClassToExtend | The name of class, not full symbol name. |
Category | The name of category. |
Definition at line 135 of file RecordsSlice.cpp.
Referenced by findContainer().
ObjCInterfaceRecord * RecordsSlice::findObjCInterface | ( | StringRef | Name | ) | const |
Find ObjC Class.
Name | name of class, not full symbol name. |
Definition at line 131 of file RecordsSlice.cpp.
References Name.
Referenced by addObjCCategory(), and findContainer().
ObjCIVarRecord * RecordsSlice::findObjCIVar | ( | bool | IsScopedName, |
StringRef | Name | ||
) | const |
Find ObjC instance variable.
IsScopedName | This is used to determine how to parse the name. |
Name | Either the full name of the symbol or just the ivar. |
Definition at line 145 of file RecordsSlice.cpp.
References _, findContainer(), and Name.
RecordsSlice::BinaryAttrs & RecordsSlice::getBinaryAttrs | ( | ) |
Return reference to BinaryAttrs.
Definition at line 290 of file RecordsSlice.cpp.
References hasBinaryAttrs().
Get TAPI converted target.
Definition at line 34 of file RecordsSlice.h.
|
inline |
Get target triple.
Definition at line 32 of file RecordsSlice.h.
|
inline |
Definition at line 132 of file RecordsSlice.h.
Referenced by empty(), and getBinaryAttrs().
void RecordsSlice::visit | ( | RecordVisitor & | V | ) | const |
Definition at line 296 of file RecordsSlice.cpp.
References llvm::CallingConv::C, and G.