File indexing completed on 2026-05-10 08:43:00
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLDB_LLDB_FORWARD_H
0010 #define LLDB_LLDB_FORWARD_H
0011
0012 #include <memory>
0013
0014
0015 namespace lldb_private {
0016
0017 class ABI;
0018 class ASTResultSynthesizer;
0019 class ASTStructExtractor;
0020 class Address;
0021 class AddressRange;
0022 class AddressRanges;
0023 class AddressRangeList;
0024 class AddressResolver;
0025 class ArchSpec;
0026 class Architecture;
0027 class Args;
0028 class ArmUnwindInfo;
0029 class Baton;
0030 class Block;
0031 class Breakpoint;
0032 class BreakpointID;
0033 class BreakpointIDList;
0034 class BreakpointList;
0035 class BreakpointLocation;
0036 class BreakpointLocationCollection;
0037 class BreakpointLocationList;
0038 class BreakpointName;
0039 class BreakpointOptionGroup;
0040 class BreakpointOptions;
0041 class BreakpointPrecondition;
0042 class BreakpointResolver;
0043 class BreakpointSite;
0044 class BroadcastEventSpec;
0045 class Broadcaster;
0046 class BroadcasterManager;
0047 class CXXSyntheticChildren;
0048 struct CacheSignature;
0049 class CallFrameInfo;
0050 class CommandInterpreter;
0051 class CommandInterpreterRunOptions;
0052 class CommandObject;
0053 class CommandObjectMultiword;
0054 class CommandReturnObject;
0055 class Communication;
0056 class CompactUnwindInfo;
0057 class CompileUnit;
0058 class CompilerDecl;
0059 class CompilerDeclContext;
0060 class CompilerType;
0061 class Connection;
0062 class ConnectionFileDescriptor;
0063 class ConstString;
0064 class ConstStringTable;
0065 class DWARFCallFrameInfo;
0066 class DWARFDataExtractor;
0067 class DWARFExpression;
0068 class DWARFExpressionList;
0069 class DataBuffer;
0070 class WritableDataBuffer;
0071 class DataBufferHeap;
0072 class DataEncoder;
0073 class DataExtractor;
0074 class DataFileCache;
0075 class Debugger;
0076 class Declaration;
0077 class DiagnosticManager;
0078 class Disassembler;
0079 class DumpValueObjectOptions;
0080 class DynamicCheckerFunctions;
0081 class DynamicLoader;
0082 class Editline;
0083 class EmulateInstruction;
0084 class Environment;
0085 class EvaluateExpressionOptions;
0086 class Event;
0087 class EventData;
0088 class EventDataStructuredData;
0089 class ExecutionContext;
0090 class ExecutionContextRef;
0091 class ExecutionContextScope;
0092 class Expression;
0093 class ExpressionTypeSystemHelper;
0094 class ExpressionVariable;
0095 class ExpressionVariableList;
0096 class File;
0097 class FileSpec;
0098 class FileSpecList;
0099 class Flags;
0100 namespace FormatEntity {
0101 struct Entry;
0102 }
0103 class FormatManager;
0104 class FormattersMatchCandidate;
0105 class FuncUnwinders;
0106 class Function;
0107 class FunctionCaller;
0108 class FunctionInfo;
0109 class IOHandler;
0110 class IOObject;
0111 class IRExecutionUnit;
0112 class InlineFunctionInfo;
0113 class Instruction;
0114 class InstructionList;
0115 class InstrumentationRuntime;
0116 class JITLoader;
0117 class JITLoaderList;
0118 class Language;
0119 class LanguageCategory;
0120 class LanguageRuntime;
0121 class LineTable;
0122 class Listener;
0123 class Log;
0124 class Mangled;
0125 class Materializer;
0126 class MemoryHistory;
0127 class MemoryRegionInfo;
0128 class MemoryRegionInfos;
0129 class Module;
0130 class ModuleList;
0131 class ModuleSpec;
0132 class ModuleSpecList;
0133 class ObjectContainer;
0134 class ObjectFile;
0135 class ObjectFileJITDelegate;
0136 class OperatingSystem;
0137 class OperatingSystemInterface;
0138 class OptionGroup;
0139 class OptionGroupOptions;
0140 class OptionGroupPlatform;
0141 class OptionValue;
0142 class OptionValueArch;
0143 class OptionValueArgs;
0144 class OptionValueArray;
0145 class OptionValueBoolean;
0146 class OptionValueChar;
0147 class OptionValueDictionary;
0148 class OptionValueEnumeration;
0149 class OptionValueFileSpec;
0150 class OptionValueFileSpecList;
0151 class OptionValueFormat;
0152 class OptionValueFormatEntity;
0153 class OptionValueLanguage;
0154 class OptionValuePathMappings;
0155 class OptionValueProperties;
0156 class OptionValueRegex;
0157 class OptionValueSInt64;
0158 class OptionValueString;
0159 class OptionValueUInt64;
0160 class OptionValueUUID;
0161 class Options;
0162 class PathMappingList;
0163 class PersistentExpressionState;
0164 class Platform;
0165 class Process;
0166 class ProcessAttachInfo;
0167 class ProcessLaunchInfo;
0168 class ProcessInfo;
0169 class ProcessInstanceInfo;
0170 class ProcessInstanceInfoMatch;
0171 class ProcessLaunchInfo;
0172 class ProcessModID;
0173 class Property;
0174 class Queue;
0175 class QueueImpl;
0176 class QueueItem;
0177 class REPL;
0178 class RealpathPrefixes;
0179 class RecognizedStackFrame;
0180 class RegisterCheckpoint;
0181 class RegisterContext;
0182 class RegisterTypeBuilder;
0183 class RegisterValue;
0184 class RegularExpression;
0185 class RichManglingContext;
0186 class SaveCoreOptions;
0187 class Scalar;
0188 class ScriptInterpreter;
0189 class ScriptInterpreterLocker;
0190 class ScriptedMetadata;
0191 class ScriptedPlatformInterface;
0192 class ScriptedProcessInterface;
0193 class ScriptedStopHookInterface;
0194 class ScriptedThreadInterface;
0195 class ScriptedThreadPlanInterface;
0196 class ScriptedSyntheticChildren;
0197 class SearchFilter;
0198 class Section;
0199 class SectionList;
0200 class SectionLoadHistory;
0201 class SectionLoadList;
0202 class Settings;
0203 class SourceManager;
0204 class SourceManagerImpl;
0205 class StackFrame;
0206 class StackFrameList;
0207 class StackFrameRecognizer;
0208 class StackFrameRecognizerManager;
0209 class StackID;
0210 class Status;
0211 class SaveCoreOptions;
0212 class StopInfo;
0213 class Stoppoint;
0214 class StoppointCallbackContext;
0215 class Stream;
0216 class StreamFile;
0217 class StreamString;
0218 class StringList;
0219 class StringTableReader;
0220 class StructuredDataImpl;
0221 class StructuredDataPlugin;
0222 class SupportFile;
0223 class Symbol;
0224 class SymbolContext;
0225 class SymbolContextList;
0226 class SymbolContextScope;
0227 class SymbolContextSpecifier;
0228 class SymbolFile;
0229 class SymbolFileType;
0230 class SymbolLocator;
0231 class SymbolVendor;
0232 class Symtab;
0233 class SyntheticChildren;
0234 class SyntheticChildrenFrontEnd;
0235 class SystemRuntime;
0236 class Progress;
0237 class Target;
0238 class TargetList;
0239 class TargetProperties;
0240 class Thread;
0241 class ThreadCollection;
0242 class ThreadList;
0243 class ThreadPlan;
0244 class ThreadPlanBase;
0245 class ThreadPlanRunToAddress;
0246 class ThreadPlanStepInstruction;
0247 class ThreadPlanStepOut;
0248 class ThreadPlanStepOverBreakpoint;
0249 class ThreadPlanStepRange;
0250 class ThreadPlanStepThrough;
0251 class ThreadPlanTracer;
0252 class ThreadSpec;
0253 class ThreadPostMortemTrace;
0254 class ThreadedCommunication;
0255 class Trace;
0256 class TraceCursor;
0257 class TraceExporter;
0258 class Type;
0259 class TypeAndOrName;
0260 class TypeCategoryImpl;
0261 class TypeCategoryMap;
0262 class TypeEnumMemberImpl;
0263 class TypeEnumMemberListImpl;
0264 class TypeFilterImpl;
0265 class TypeFormatImpl;
0266 class TypeImpl;
0267 class TypeList;
0268 class TypeListImpl;
0269 class TypeMap;
0270 class TypeQuery;
0271 class TypeMemberFunctionImpl;
0272 class TypeMemberImpl;
0273 class TypeNameSpecifierImpl;
0274 class TypeResults;
0275 class TypeSummaryImpl;
0276 class TypeSummaryOptions;
0277 class TypeSystem;
0278 class TypeSystemClang;
0279 class UUID;
0280 class UnixSignals;
0281 class Unwind;
0282 class UnwindAssembly;
0283 class UnwindPlan;
0284 class UnwindTable;
0285 class UserExpression;
0286 class UtilityFunction;
0287 class VMRange;
0288 class Value;
0289 class ValueList;
0290 class ValueObject;
0291 class ValueObjectChild;
0292 class ValueObjectConstResult;
0293 class ValueObjectConstResultChild;
0294 class ValueObjectConstResultImpl;
0295 class ValueObjectList;
0296 class ValueObjectPrinter;
0297 class Variable;
0298 class VariableList;
0299 class Watchpoint;
0300 class WatchpointList;
0301 class WatchpointOptions;
0302 class WatchpointResource;
0303 class WatchpointResourceCollection;
0304 class WatchpointSetOptions;
0305 struct CompilerContext;
0306 struct LineEntry;
0307 struct PropertyDefinition;
0308 struct ScriptSummaryFormat;
0309 struct StatisticsOptions;
0310 struct StringSummaryFormat;
0311 template <unsigned N> class StreamBuffer;
0312
0313 }
0314
0315
0316 namespace lldb {
0317
0318 typedef std::shared_ptr<lldb_private::ABI> ABISP;
0319 typedef std::unique_ptr<lldb_private::AddressRange> AddressRangeUP;
0320 typedef std::shared_ptr<lldb_private::Baton> BatonSP;
0321 typedef std::shared_ptr<lldb_private::Block> BlockSP;
0322 typedef std::shared_ptr<lldb_private::Breakpoint> BreakpointSP;
0323 typedef std::weak_ptr<lldb_private::Breakpoint> BreakpointWP;
0324 typedef std::shared_ptr<lldb_private::BreakpointSite> BreakpointSiteSP;
0325 typedef std::shared_ptr<lldb_private::BreakpointLocation> BreakpointLocationSP;
0326 typedef std::weak_ptr<lldb_private::BreakpointLocation> BreakpointLocationWP;
0327 typedef std::shared_ptr<lldb_private::BreakpointPrecondition>
0328 BreakpointPreconditionSP;
0329 typedef std::shared_ptr<lldb_private::BreakpointResolver> BreakpointResolverSP;
0330 typedef std::shared_ptr<lldb_private::Broadcaster> BroadcasterSP;
0331 typedef std::shared_ptr<lldb_private::BroadcasterManager> BroadcasterManagerSP;
0332 typedef std::weak_ptr<lldb_private::BroadcasterManager> BroadcasterManagerWP;
0333 typedef std::shared_ptr<lldb_private::UserExpression> UserExpressionSP;
0334 typedef std::shared_ptr<lldb_private::CommandObject> CommandObjectSP;
0335 typedef std::shared_ptr<lldb_private::Connection> ConnectionSP;
0336 typedef std::shared_ptr<lldb_private::CompileUnit> CompUnitSP;
0337 typedef std::shared_ptr<lldb_private::DataBuffer> DataBufferSP;
0338 typedef std::shared_ptr<lldb_private::WritableDataBuffer> WritableDataBufferSP;
0339 typedef std::shared_ptr<lldb_private::DataExtractor> DataExtractorSP;
0340 typedef std::shared_ptr<lldb_private::Debugger> DebuggerSP;
0341 typedef std::weak_ptr<lldb_private::Debugger> DebuggerWP;
0342 typedef std::shared_ptr<lldb_private::Disassembler> DisassemblerSP;
0343 typedef std::unique_ptr<lldb_private::DynamicCheckerFunctions>
0344 DynamicCheckerFunctionsUP;
0345 typedef std::unique_ptr<lldb_private::DynamicLoader> DynamicLoaderUP;
0346 typedef std::shared_ptr<lldb_private::Event> EventSP;
0347 typedef std::shared_ptr<lldb_private::EventData> EventDataSP;
0348 typedef std::shared_ptr<lldb_private::EventDataStructuredData>
0349 EventDataStructuredDataSP;
0350 typedef std::shared_ptr<lldb_private::ExecutionContextRef>
0351 ExecutionContextRefSP;
0352 typedef std::shared_ptr<lldb_private::ExpressionVariable> ExpressionVariableSP;
0353 typedef std::unique_ptr<lldb_private::File> FileUP;
0354 typedef std::shared_ptr<lldb_private::File> FileSP;
0355 typedef std::shared_ptr<lldb_private::FormatEntity::Entry> FormatEntrySP;
0356 typedef std::shared_ptr<lldb_private::Function> FunctionSP;
0357 typedef std::shared_ptr<lldb_private::FuncUnwinders> FuncUnwindersSP;
0358 typedef std::shared_ptr<lldb_private::InlineFunctionInfo> InlineFunctionInfoSP;
0359 typedef std::shared_ptr<lldb_private::Instruction> InstructionSP;
0360 typedef std::shared_ptr<lldb_private::InstrumentationRuntime>
0361 InstrumentationRuntimeSP;
0362 typedef std::shared_ptr<lldb_private::IOHandler> IOHandlerSP;
0363 typedef std::shared_ptr<lldb_private::IOObject> IOObjectSP;
0364 typedef std::shared_ptr<lldb_private::IRExecutionUnit> IRExecutionUnitSP;
0365 typedef std::shared_ptr<lldb_private::JITLoader> JITLoaderSP;
0366 typedef std::unique_ptr<lldb_private::JITLoaderList> JITLoaderListUP;
0367 typedef std::shared_ptr<lldb_private::LanguageRuntime> LanguageRuntimeSP;
0368 typedef std::unique_ptr<lldb_private::SystemRuntime> SystemRuntimeUP;
0369 typedef std::shared_ptr<lldb_private::Listener> ListenerSP;
0370 typedef std::weak_ptr<lldb_private::Listener> ListenerWP;
0371 typedef std::shared_ptr<lldb_private::MemoryHistory> MemoryHistorySP;
0372 typedef std::unique_ptr<lldb_private::MemoryRegionInfo> MemoryRegionInfoUP;
0373 typedef std::shared_ptr<lldb_private::MemoryRegionInfo> MemoryRegionInfoSP;
0374 typedef std::shared_ptr<lldb_private::Module> ModuleSP;
0375 typedef std::weak_ptr<lldb_private::Module> ModuleWP;
0376 typedef std::shared_ptr<lldb_private::ObjectFile> ObjectFileSP;
0377 typedef std::shared_ptr<lldb_private::ObjectContainer> ObjectContainerSP;
0378 typedef std::shared_ptr<lldb_private::ObjectFileJITDelegate>
0379 ObjectFileJITDelegateSP;
0380 typedef std::weak_ptr<lldb_private::ObjectFileJITDelegate>
0381 ObjectFileJITDelegateWP;
0382 typedef std::unique_ptr<lldb_private::OperatingSystem> OperatingSystemUP;
0383 typedef std::shared_ptr<lldb_private::OperatingSystemInterface>
0384 OperatingSystemInterfaceSP;
0385 typedef std::shared_ptr<lldb_private::OptionValue> OptionValueSP;
0386 typedef std::weak_ptr<lldb_private::OptionValue> OptionValueWP;
0387 typedef std::shared_ptr<lldb_private::OptionValueProperties>
0388 OptionValuePropertiesSP;
0389 typedef std::shared_ptr<lldb_private::Platform> PlatformSP;
0390 typedef std::shared_ptr<lldb_private::Process> ProcessSP;
0391 typedef std::shared_ptr<lldb_private::ProcessAttachInfo> ProcessAttachInfoSP;
0392 typedef std::shared_ptr<lldb_private::ProcessLaunchInfo> ProcessLaunchInfoSP;
0393 typedef std::weak_ptr<lldb_private::Process> ProcessWP;
0394 typedef std::shared_ptr<lldb_private::RegisterCheckpoint> RegisterCheckpointSP;
0395 typedef std::shared_ptr<lldb_private::RegisterContext> RegisterContextSP;
0396 typedef std::shared_ptr<lldb_private::RegisterTypeBuilder>
0397 RegisterTypeBuilderSP;
0398 typedef std::shared_ptr<lldb_private::RegularExpression> RegularExpressionSP;
0399 typedef std::shared_ptr<lldb_private::Queue> QueueSP;
0400 typedef std::weak_ptr<lldb_private::Queue> QueueWP;
0401 typedef std::shared_ptr<lldb_private::QueueItem> QueueItemSP;
0402 typedef std::shared_ptr<lldb_private::REPL> REPLSP;
0403 typedef std::shared_ptr<lldb_private::RecognizedStackFrame>
0404 RecognizedStackFrameSP;
0405 typedef std::shared_ptr<lldb_private::ScriptSummaryFormat>
0406 ScriptSummaryFormatSP;
0407 typedef std::shared_ptr<lldb_private::ScriptInterpreter> ScriptInterpreterSP;
0408 typedef std::shared_ptr<lldb_private::ScriptedMetadata> ScriptedMetadataSP;
0409 typedef std::unique_ptr<lldb_private::ScriptedPlatformInterface>
0410 ScriptedPlatformInterfaceUP;
0411 typedef std::unique_ptr<lldb_private::ScriptedProcessInterface>
0412 ScriptedProcessInterfaceUP;
0413 typedef std::shared_ptr<lldb_private::ScriptedStopHookInterface>
0414 ScriptedStopHookInterfaceSP;
0415 typedef std::shared_ptr<lldb_private::ScriptedThreadInterface>
0416 ScriptedThreadInterfaceSP;
0417 typedef std::shared_ptr<lldb_private::ScriptedThreadPlanInterface>
0418 ScriptedThreadPlanInterfaceSP;
0419 typedef std::shared_ptr<lldb_private::Section> SectionSP;
0420 typedef std::unique_ptr<lldb_private::SectionList> SectionListUP;
0421 typedef std::weak_ptr<lldb_private::Section> SectionWP;
0422 typedef std::shared_ptr<lldb_private::SectionLoadList> SectionLoadListSP;
0423 typedef std::shared_ptr<lldb_private::SearchFilter> SearchFilterSP;
0424 typedef std::unique_ptr<lldb_private::SourceManager> SourceManagerUP;
0425 typedef std::shared_ptr<lldb_private::StackFrame> StackFrameSP;
0426 typedef std::weak_ptr<lldb_private::StackFrame> StackFrameWP;
0427 typedef std::shared_ptr<lldb_private::StackFrameList> StackFrameListSP;
0428 typedef std::shared_ptr<lldb_private::StackFrameRecognizer>
0429 StackFrameRecognizerSP;
0430 typedef std::unique_ptr<lldb_private::StackFrameRecognizerManager>
0431 StackFrameRecognizerManagerUP;
0432 typedef std::shared_ptr<lldb_private::StopInfo> StopInfoSP;
0433 typedef std::shared_ptr<lldb_private::Stream> StreamSP;
0434 typedef std::shared_ptr<lldb_private::StreamFile> StreamFileSP;
0435 typedef std::shared_ptr<lldb_private::StringSummaryFormat>
0436 StringTypeSummaryImplSP;
0437 typedef std::unique_ptr<lldb_private::StructuredDataImpl> StructuredDataImplUP;
0438 typedef std::shared_ptr<lldb_private::StructuredDataPlugin>
0439 StructuredDataPluginSP;
0440 typedef std::weak_ptr<lldb_private::StructuredDataPlugin>
0441 StructuredDataPluginWP;
0442 typedef std::shared_ptr<lldb_private::SymbolFileType> SymbolFileTypeSP;
0443 typedef std::shared_ptr<lldb_private::SymbolContextSpecifier>
0444 SymbolContextSpecifierSP;
0445 typedef std::unique_ptr<lldb_private::SymbolVendor> SymbolVendorUP;
0446 typedef std::shared_ptr<lldb_private::SyntheticChildren> SyntheticChildrenSP;
0447 typedef std::shared_ptr<lldb_private::SyntheticChildrenFrontEnd>
0448 SyntheticChildrenFrontEndSP;
0449 typedef std::shared_ptr<lldb_private::Target> TargetSP;
0450 typedef std::weak_ptr<lldb_private::Target> TargetWP;
0451 typedef std::shared_ptr<lldb_private::Thread> ThreadSP;
0452 typedef std::weak_ptr<lldb_private::Thread> ThreadWP;
0453 typedef std::shared_ptr<lldb_private::ThreadCollection> ThreadCollectionSP;
0454 typedef std::shared_ptr<lldb_private::ThreadPlan> ThreadPlanSP;
0455 typedef std::shared_ptr<lldb_private::ThreadPostMortemTrace>
0456 ThreadPostMortemTraceSP;
0457 typedef std::weak_ptr<lldb_private::ThreadPlan> ThreadPlanWP;
0458 typedef std::shared_ptr<lldb_private::ThreadPlanTracer> ThreadPlanTracerSP;
0459 typedef std::shared_ptr<lldb_private::Trace> TraceSP;
0460 typedef std::unique_ptr<lldb_private::TraceExporter> TraceExporterUP;
0461 typedef std::shared_ptr<lldb_private::TraceCursor> TraceCursorSP;
0462 typedef std::shared_ptr<lldb_private::Type> TypeSP;
0463 typedef std::weak_ptr<lldb_private::Type> TypeWP;
0464 typedef std::shared_ptr<lldb_private::TypeCategoryImpl> TypeCategoryImplSP;
0465 typedef std::shared_ptr<lldb_private::TypeImpl> TypeImplSP;
0466 typedef std::shared_ptr<lldb_private::TypeMemberFunctionImpl>
0467 TypeMemberFunctionImplSP;
0468 typedef std::shared_ptr<lldb_private::TypeEnumMemberImpl> TypeEnumMemberImplSP;
0469 typedef std::shared_ptr<lldb_private::TypeFilterImpl> TypeFilterImplSP;
0470 typedef std::shared_ptr<lldb_private::TypeSystem> TypeSystemSP;
0471 typedef std::shared_ptr<lldb_private::TypeSystemClang> TypeSystemClangSP;
0472 typedef std::weak_ptr<lldb_private::TypeSystem> TypeSystemWP;
0473 typedef std::shared_ptr<lldb_private::TypeFormatImpl> TypeFormatImplSP;
0474 typedef std::shared_ptr<lldb_private::TypeNameSpecifierImpl>
0475 TypeNameSpecifierImplSP;
0476 typedef std::shared_ptr<lldb_private::TypeSummaryImpl> TypeSummaryImplSP;
0477 typedef std::shared_ptr<lldb_private::TypeSummaryOptions> TypeSummaryOptionsSP;
0478 typedef std::shared_ptr<lldb_private::ScriptedSyntheticChildren>
0479 ScriptedSyntheticChildrenSP;
0480 typedef std::shared_ptr<lldb_private::SupportFile> SupportFileSP;
0481 typedef std::shared_ptr<lldb_private::UnixSignals> UnixSignalsSP;
0482 typedef std::weak_ptr<lldb_private::UnixSignals> UnixSignalsWP;
0483 typedef std::shared_ptr<lldb_private::UnwindAssembly> UnwindAssemblySP;
0484 typedef std::shared_ptr<lldb_private::UnwindPlan> UnwindPlanSP;
0485 typedef std::shared_ptr<lldb_private::ValueObject> ValueObjectSP;
0486 typedef std::shared_ptr<lldb_private::Value> ValueSP;
0487 typedef std::shared_ptr<lldb_private::Variable> VariableSP;
0488 typedef std::shared_ptr<lldb_private::VariableList> VariableListSP;
0489 typedef std::shared_ptr<lldb_private::ValueObjectList> ValueObjectListSP;
0490 typedef std::shared_ptr<lldb_private::Watchpoint> WatchpointSP;
0491 typedef std::shared_ptr<lldb_private::WatchpointResource> WatchpointResourceSP;
0492
0493 }
0494
0495 #endif