View Source edb_dap_request_initialize (edb v0.4.0)

Summary

Types

arguments/0

-type arguments() ::
          #{clientID => binary(),
            clientName => binary(),
            adapterID := binary(),
            locale => binary(),
            linesStartAt1 => boolean(),
            columnsStartAt1 => boolean(),
            pathFormat => path | uri,
            supportsVariableType => boolean(),
            supportsVariablePaging => boolean(),
            supportsRunInTerminalRequest => boolean(),
            supportsMemoryReferences => boolean(),
            supportsProgressReporting => boolean(),
            supportsInvalidatedEvent => boolean(),
            supportsMemoryEvent => boolean(),
            supportsArgsCanBeInterpretedByShell => boolean(),
            supportsStartDebuggingRequest => boolean(),
            supportsANSIStyling => boolean()}.

breakpointMode/0

-type breakpointMode() ::
          #{mode := binary(),
            label := binary(),
            description => binary(),
            appliesTo => [breakpointModeApplicability()]}.

breakpointModeApplicability/0

-type breakpointModeApplicability() :: source | exception | data | instruction.

capabilities/0

-type capabilities() ::
          #{supportsConfigurationDoneRequest => boolean(),
            supportsFunctionBreakpoints => boolean(),
            supportsConditionalBreakpoints => boolean(),
            supportsHitConditionalBreakpoints => boolean(),
            supportsEvaluateForHovers => boolean(),
            exceptionBreakpointFilters => [exceptionBreakpointsFilter()],
            supportsStepBack => boolean(),
            supportsSetVariable => boolean(),
            supportsRestartFrame => boolean(),
            supportsGotoTargetsRequest => boolean(),
            supportsStepInTargetsRequest => boolean(),
            supportsCompletionsRequest => boolean(),
            completionTriggerCharacters => [binary()],
            supportsModulesRequest => boolean(),
            additionalModuleColumns => [columnDescriptor()],
            supportedChecksumAlgorithms => [edb_dap:checksumAlgorithm()],
            supportsRestartRequest => boolean(),
            supportsExceptionOptions => boolean(),
            supportsValueFormattingOptions => boolean(),
            supportsExceptionInfoRequest => boolean(),
            supportTerminateDebuggee => boolean(),
            supportSuspendDebuggee => boolean(),
            supportsDelayedStackTraceLoading => boolean(),
            supportsLoadedSourcesRequest => boolean(),
            supportsLogPoints => boolean(),
            supportsTerminateThreadsRequest => boolean(),
            supportsSetExpression => boolean(),
            supportsTerminateRequest => boolean(),
            supportsDataBreakpoints => boolean(),
            supportsReadMemoryRequest => boolean(),
            supportsWriteMemoryRequest => boolean(),
            supportsDisassembleRequest => boolean(),
            supportsCancelRequest => boolean(),
            supportsBreakpointLocationsRequest => boolean(),
            supportsClipboardContext => boolean(),
            supportsSteppingGranularity => boolean(),
            supportsInstructionBreakpoints => boolean(),
            supportsExceptionFilterOptions => boolean(),
            supportsSingleThreadExecutionRequests => boolean(),
            supportsDataBreakpointBytes => boolean(),
            breakpointModes => [breakpointMode()]}.

columnDescriptor/0

-type columnDescriptor() ::
          #{attributeName := binary(),
            label := string(),
            format => binary(),
            type => string | number | boolean | unixTimestampUTC,
            width => number()}.

exceptionBreakpointsFilter/0

-type exceptionBreakpointsFilter() ::
          #{filter := binary(),
            label := binary(),
            description => binary(),
            default => boolean(),
            supportsCondition => boolean(),
            conditionDescription => binary()}.

Functions

handle(State, Args)

-spec handle(State, Args) -> edb_dap_request:reaction(capabilities())
                when State :: edb_dap_server:state(), Args :: arguments().

parse_arguments(Args)

-spec parse_arguments(edb_dap:arguments()) -> {ok, arguments()} | {error, Reason :: binary()}.