Home | History | Annotate | Download | only in AST

Lines Matching defs:APValue

1 //===--- APValue.cpp - Union class for APFloat/APSInt/Complex -------------===//
10 // This file implements the APValue class.
14 #include "clang/AST/APValue.h"
28 llvm::PointerIntPair<APValue::LValueBase, 1, bool> BaseAndIsOnePastTheEnd;
35 struct APValue::LV : LVBase {
76 struct APValue::MemberPointerData : MemberPointerBase {
108 APValue::Arr::Arr(unsigned NumElts, unsigned Size) :
109 Elts(new APValue[NumElts + (NumElts != Size ? 1 : 0)]),
111 APValue::Arr::~Arr() { delete [] Elts; }
113 APValue::StructData::StructData(unsigned NumBases, unsigned NumFields) :
114 Elts(new APValue[NumBases+NumFields]),
116 APValue::StructData::~StructData() {
120 APValue::UnionData::UnionData() : Field(0), Value(new APValue) {}
121 APValue::UnionData::~UnionData () {
125 APValue::APValue(const APValue &RHS) : Kind(Uninitialized) {
189 void APValue::DestroyDataAndMakeUninit() {
215 void APValue::swap(APValue &RHS) {
223 void APValue::dump() const {
236 void APValue::dump(raw_ostream &OS) const {
306 llvm_unreachable("Unknown APValue kind!");
309 void APValue::printPretty(raw_ostream &Out, ASTContext &Ctx, QualType Ty) const{
311 case APValue::Uninitialized:
314 case APValue::Int:
320 case APValue::Float:
323 case APValue::Vector: {
334 case APValue::ComplexInt:
337 case APValue::ComplexFloat:
341 case APValue::LValue: {
433 case APValue::Array: {
452 case APValue::Struct: {
479 case APValue::Union:
487 case APValue::MemberPointer:
496 case APValue::AddrLabelDiff:
502 llvm_unreachable("Unknown APValue kind!");
505 std::string APValue::getAsString(ASTContext &Ctx, QualType Ty) const {
513 const APValue::LValueBase APValue::getLValueBase() const {
518 bool APValue::isLValueOnePastTheEnd() const {
523 CharUnits &APValue::getLValueOffset() {
528 bool APValue::hasLValuePath() const {
533 ArrayRef<APValue::LValuePathEntry> APValue::getLValuePath() const {
539 unsigned APValue::getLValueCallIndex() const {
544 void APValue::setLValue(LValueBase B, const CharUnits &O, NoLValuePath,
555 APValue::setLValue(LValueBase B, const CharUnits &O,
568 const ValueDecl *APValue::getMemberPointerDecl() const {
574 bool APValue::isMemberPointerToDerivedMember() const {
580 ArrayRef<const CXXRecordDecl*> APValue::getMemberPointerPath() const {
586 void APValue::MakeLValue() {
593 void APValue::MakeArray(unsigned InitElts, unsigned Size) {
599 void APValue::MakeMemberPointer(const ValueDecl *Member, bool IsDerivedMember,