LLDB mainline
Classes | Functions | Variables
Cocoa.cpp File Reference
#include "Cocoa.h"
#include "NSString.h"
#include "ObjCConstants.h"
#include "Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.h"
#include "Plugins/TypeSystem/Clang/TypeSystemClang.h"
#include "lldb/Core/Mangled.h"
#include "lldb/Core/ValueObject.h"
#include "lldb/Core/ValueObjectConstResult.h"
#include "lldb/DataFormatters/FormattersHelpers.h"
#include "lldb/DataFormatters/StringPrinter.h"
#include "lldb/DataFormatters/TypeSummary.h"
#include "lldb/Host/Time.h"
#include "lldb/Target/Language.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/Target.h"
#include "lldb/Utility/DataBufferHeap.h"
#include "lldb/Utility/Endian.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Status.h"
#include "lldb/Utility/Stream.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/bit.h"

Go to the source code of this file.

Classes

struct  DoubleBits
 
struct  TaggedDoubleBits
 
class  ObjCClassSyntheticChildrenFrontEnd
 

Functions

static void NSNumber_FormatChar (ValueObject &valobj, Stream &stream, char value, lldb::LanguageType lang)
 
static void NSNumber_FormatShort (ValueObject &valobj, Stream &stream, short value, lldb::LanguageType lang)
 
static void NSNumber_FormatInt (ValueObject &valobj, Stream &stream, int value, lldb::LanguageType lang)
 
static void NSNumber_FormatLong (ValueObject &valobj, Stream &stream, int64_t value, lldb::LanguageType lang)
 
static void NSNumber_FormatInt128 (ValueObject &valobj, Stream &stream, const llvm::APInt &value, lldb::LanguageType lang)
 
static void NSNumber_FormatFloat (ValueObject &valobj, Stream &stream, float value, lldb::LanguageType lang)
 
static void NSNumber_FormatDouble (ValueObject &valobj, Stream &stream, double value, lldb::LanguageType lang)
 
static uint64_t decodeExponent (uint64_t exp)
 
static double decodeTaggedTimeInterval (uint64_t encodedTimeInterval)
 

Variables

const int TAGGED_DATE_EXPONENT_BIAS = 0x3ef
 Bias value for tagged pointer exponents.
 

Function Documentation

◆ decodeExponent()

static uint64_t decodeExponent ( uint64_t  exp)
static

Definition at line 877 of file Cocoa.cpp.

References TAGGED_DATE_EXPONENT_BIAS.

Referenced by decodeTaggedTimeInterval().

◆ decodeTaggedTimeInterval()

static double decodeTaggedTimeInterval ( uint64_t  encodedTimeInterval)
static

◆ NSNumber_FormatChar()

static void NSNumber_FormatChar ( ValueObject valobj,
Stream stream,
char  value,
lldb::LanguageType  lang 
)
static

◆ NSNumber_FormatDouble()

static void NSNumber_FormatDouble ( ValueObject valobj,
Stream stream,
double  value,
lldb::LanguageType  lang 
)
static

◆ NSNumber_FormatFloat()

static void NSNumber_FormatFloat ( ValueObject valobj,
Stream stream,
float  value,
lldb::LanguageType  lang 
)
static

◆ NSNumber_FormatInt()

static void NSNumber_FormatInt ( ValueObject valobj,
Stream stream,
int  value,
lldb::LanguageType  lang 
)
static

◆ NSNumber_FormatInt128()

static void NSNumber_FormatInt128 ( ValueObject valobj,
Stream stream,
const llvm::APInt &  value,
lldb::LanguageType  lang 
)
static

◆ NSNumber_FormatLong()

static void NSNumber_FormatLong ( ValueObject valobj,
Stream stream,
int64_t  value,
lldb::LanguageType  lang 
)
static

◆ NSNumber_FormatShort()

static void NSNumber_FormatShort ( ValueObject valobj,
Stream stream,
short  value,
lldb::LanguageType  lang 
)
static

Variable Documentation

◆ TAGGED_DATE_EXPONENT_BIAS

const int TAGGED_DATE_EXPONENT_BIAS = 0x3ef

Bias value for tagged pointer exponents.

Recommended values: 0x3e3: encodes all dates between distantPast and distantFuture except for the range within about 1e-28 second of the reference date. 0x3ef: encodes all dates for a few million years beyond distantPast and distantFuture, except within about 1e-25 second of the reference date.

Definition at line 862 of file Cocoa.cpp.

Referenced by decodeExponent().