LLDB  mainline
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
StructuredDataDarwinLog.cpp File Reference
#include "StructuredDataDarwinLog.h"
#include <string.h>
#include <memory>
#include <sstream>
#include "lldb/Breakpoint/StoppointCallbackContext.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Host/OptionParser.h"
#include "lldb/Interpreter/CommandInterpreter.h"
#include "lldb/Interpreter/CommandObjectMultiword.h"
#include "lldb/Interpreter/CommandReturnObject.h"
#include "lldb/Interpreter/OptionArgParser.h"
#include "lldb/Interpreter/OptionValueProperties.h"
#include "lldb/Interpreter/OptionValueString.h"
#include "lldb/Interpreter/Property.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/Target.h"
#include "lldb/Target/ThreadPlanCallOnFunctionExit.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/RegularExpression.h"
Include dependency graph for StructuredDataDarwinLog.cpp:

Go to the source code of this file.

Classes

class  sddarwinlog_private::StructuredDataDarwinLogProperties
 
class  sddarwinlog_private::FilterRule
 
class  sddarwinlog_private::RegexFilterRule
 
class  sddarwinlog_private::ExactMatchFilterRule
 
class  sddarwinlog_private::EnableOptions
 
class  sddarwinlog_private::EnableCommand
 
class  sddarwinlog_private::StatusCommand
 Provides the status command. More...
 
class  sddarwinlog_private::BaseCommand
 Provides the darwin-log base command. More...
 

Namespaces

 sddarwinlog_private
 

Macros

#define DARWIN_LOG_TYPE_VALUE   "DarwinLog"
 

Typedefs

using sddarwinlog_private::EnableOptionsSP = std::shared_ptr< EnableOptions >
 
using sddarwinlog_private::OptionsMap = std::map< DebuggerWP, EnableOptionsSP, std::owner_less< DebuggerWP > >
 
using sddarwinlog_private::StructuredDataDarwinLogPropertiesSP = std::shared_ptr< StructuredDataDarwinLogProperties >
 
using sddarwinlog_private::FilterRuleSP = std::shared_ptr< FilterRule >
 
using sddarwinlog_private::FilterRules = std::vector< FilterRuleSP >
 

Enumerations

enum  { sddarwinlog_private::ePropertyEnableOnStartup = 0, sddarwinlog_private::ePropertyAutoEnableOptions = 1 }
 

Functions

static OptionsMapsddarwinlog_private::GetGlobalOptionsMap ()
 
static std::mutex & sddarwinlog_private::GetGlobalOptionsMapLock ()
 
EnableOptionsSP sddarwinlog_private::GetGlobalEnableOptions (const DebuggerSP &debugger_sp)
 
void sddarwinlog_private::SetGlobalEnableOptions (const DebuggerSP &debugger_sp, const EnableOptionsSP &options_sp)
 
static const StructuredDataDarwinLogPropertiesSPsddarwinlog_private::GetGlobalProperties ()
 
static ConstString sddarwinlog_private::GetDarwinLogTypeName ()
 
static ConstString sddarwinlog_private::GetLogEventType ()
 
static void sddarwinlog_private::RegisterFilterOperations ()
 
EnableOptionsSP sddarwinlog_private::ParseAutoEnableOptions (Status &error, Debugger &debugger)
 
bool sddarwinlog_private::RunEnableCommand (CommandInterpreter &interpreter)
 
static void SetErrorWithJSON (Status &error, const char *message, StructuredData::Object &object)
 

Variables

const uint64_t sddarwinlog_private::NANOS_PER_MICRO = 1000
 
const uint64_t sddarwinlog_private::NANOS_PER_MILLI = NANOS_PER_MICRO * 1000
 
const uint64_t sddarwinlog_private::NANOS_PER_SECOND = NANOS_PER_MILLI * 1000
 
const uint64_t sddarwinlog_private::NANOS_PER_MINUTE = NANOS_PER_SECOND * 60
 
const uint64_t sddarwinlog_private::NANOS_PER_HOUR = NANOS_PER_MINUTE * 60
 
static bool sddarwinlog_private::DEFAULT_FILTER_FALLTHROUGH_ACCEPTS = true
 
static bool sddarwinlog_private::s_is_explicitly_enabled
 Global, sticky enable switch. More...
 
static constexpr PropertyDefinition sddarwinlog_private::g_properties []
 Code to handle the StructuredDataDarwinLog settings. More...
 
const char *const sddarwinlog_private::s_filter_attributes []
 
static constexpr OptionDefinition sddarwinlog_private::g_enable_option_table []
 Provides the main on-off switch for enabling darwin logging. More...
 

Macro Definition Documentation

◆ DARWIN_LOG_TYPE_VALUE

#define DARWIN_LOG_TYPE_VALUE   "DarwinLog"

Definition at line 34 of file StructuredDataDarwinLog.cpp.

Function Documentation

◆ SetErrorWithJSON()

static void SetErrorWithJSON ( Status error,
const char *  message,
StructuredData::Object object 
)
static