3#include "di/container/string/prelude.h"
4#include "di/reflect/prelude.h"
19 constexpr friend auto tag_invoke(di::Tag<di::reflect>, di::InPlaceType<BeginPrompt>) {
31 constexpr friend auto tag_invoke(di::Tag<di::reflect>, di::InPlaceType<EndPrompt>) {
32 return di::make_fields<
"EndPrompt">();
43 constexpr friend auto tag_invoke(di::Tag<di::reflect>, di::InPlaceType<EndInput>) {
44 return di::make_fields<
"EndInput">();
58 constexpr friend auto tag_invoke(di::Tag<di::reflect>, di::InPlaceType<EndCommand>) {
85 di::Variant<BeginPrompt, EndPrompt, EndInput, EndCommand>
command;
87 static auto parse(di::StringView data) -> di::Optional<OSC133>;
91 auto operator==(
OSC133 const& other) const ->
bool = default;
94 return di::make_fields<
"OSC133">(di::field<
"command", &
OSC133::command>);
Definition absolute_position.h:6
PromptKind
Kind of prompt.
Definition semantic_prompt.h:31
@ Initial
Initial prompt (default)
Definition semantic_prompt.h:32
PromptClickMode
Controls how mouse events on the shell prompt are translated to the application.
Definition semantic_prompt.h:14
@ None
Doesn't support prompt click mode.
Definition semantic_prompt.h:15
Represents the marker beginning a shell prompt.
Definition osc_133.h:11
di::String application_id
Application id, used to detect sub-shells.
Definition osc_133.h:12
constexpr friend auto tag_invoke(di::Tag< di::reflect >, di::InPlaceType< BeginPrompt >)
Definition osc_133.h:19
PromptClickMode click_mode
Application support for prompt click mode.
Definition osc_133.h:13
PromptKind kind
Prompt kind.
Definition osc_133.h:14
bool redraw
Shell redraws the prompt, allows clearing prompt on resize.
Definition osc_133.h:15
auto operator==(BeginPrompt const &) const -> bool=default
Represents the end of a command, including exit status.
Definition osc_133.h:51
di::String application_id
Application id, used to detect sub-shells.
Definition osc_133.h:52
constexpr friend auto tag_invoke(di::Tag< di::reflect >, di::InPlaceType< EndCommand >)
Definition osc_133.h:58
auto operator==(EndCommand const &) const -> bool=default
di::String error
Command error string (empty means success)
Definition osc_133.h:54
u32 exit_code
Command exit code.
Definition osc_133.h:53
Represents the marker ending a shell prompt.
Definition osc_133.h:28
constexpr friend auto tag_invoke(di::Tag< di::reflect >, di::InPlaceType< EndPrompt >)
Definition osc_133.h:31
auto operator==(EndPrompt const &) const -> bool=default
Represents the explicit ending of a prompt.
Definition osc_133.h:84
di::Variant< BeginPrompt, EndPrompt, EndInput, EndCommand > command
Definition osc_133.h:85
auto serialize() const -> di::String
Definition osc_133.cpp:132
static auto parse(di::StringView data) -> di::Optional< OSC133 >
Definition osc_133.cpp:64
constexpr friend auto tag_invoke(di::Tag< di::reflect >, di::InPlaceType< OSC133 >)
Definition osc_133.h:93