BenBot 1.7.5
A chess engine
Loading...
Searching...
No Matches
chess::uci::Action Struct Referencefinal

#include <libchess/uci/Options.hpp>

Inheritance diagram for chess::uci::Action:
Collaboration diagram for chess::uci::Action:

Public Types

using Callback = std::function<void()>
using Value = void
using Variant = std::variant<bool, int, string_view>

Public Member Functions

 Action (string name, Callback &&action, string helpString)
auto get_declaration_string () const -> string override
auto get_default_value_variant () const -> Variant override
auto get_help () const noexcept -> string_view override
auto get_name () const noexcept -> string_view override
auto get_type () const noexcept -> string_view override
auto get_value_variant () const -> Variant override
void handle_setvalue (string_view arguments) override
auto has_value () const noexcept -> bool override

Detailed Description

A triggerable action.

Definition at line 299 of file Options.hpp.

Member Typedef Documentation

◆ Callback

using chess::uci::Action::Callback = std::function<void()>

Definition at line 301 of file Options.hpp.

◆ Value

Definition at line 300 of file Options.hpp.

◆ Variant

using chess::uci::Option::Variant = std::variant<bool, int, string_view>
inherited

Represents a variant that can hold any of the derived class's value types.

Definition at line 68 of file Options.hpp.

Constructor & Destructor Documentation

◆ Action()

chess::uci::Action::Action ( string name,
Callback && action,
string helpString )

Creates an action option.

Member Function Documentation

◆ get_declaration_string()

auto chess::uci::Action::get_declaration_string ( ) const -> string
nodiscardoverridevirtual

Returns the option's declaration string suitable for sending to the GUI. The returned string includes the "option" token.

Implements chess::uci::Option.

◆ get_default_value_variant()

auto chess::uci::Action::get_default_value_variant ( ) const -> Variant
inlinenodiscardoverridevirtual

Returns this option's default value, as a variant. Note that if has_value() returns false, you must not call this method!

Implements chess::uci::Option.

Definition at line 310 of file Options.hpp.

◆ get_help()

auto chess::uci::Action::get_help ( ) const -> string_view
inlinenodiscardoverridevirtualnoexcept

Returns the help string for this option.

Implements chess::uci::Option.

Definition at line 318 of file Options.hpp.

◆ get_name()

auto chess::uci::Action::get_name ( ) const -> string_view
inlinenodiscardoverridevirtualnoexcept

Returns this option's name.

Implements chess::uci::Option.

Definition at line 312 of file Options.hpp.

◆ get_type()

auto chess::uci::Action::get_type ( ) const -> string_view
inlinenodiscardoverridevirtualnoexcept

Returns a textual representation of this option's type.

Implements chess::uci::Option.

Definition at line 316 of file Options.hpp.

◆ get_value_variant()

auto chess::uci::Action::get_value_variant ( ) const -> Variant
inlinenodiscardoverridevirtual

Returns this option's current value, as a variant. Note that if has_value() returns false, you must not call this method!

Implements chess::uci::Option.

Definition at line 309 of file Options.hpp.

◆ handle_setvalue()

void chess::uci::Action::handle_setvalue ( string_view arguments)
overridevirtual

Will be called with everything in the "setoption" command after the option name. This is typically not called directly by user code.

Implements chess::uci::Option.

◆ has_value()

auto chess::uci::Action::has_value ( ) const -> bool
inlinenodiscardoverridevirtualnoexcept

Returns true if this option type has an associated value. False only for Action options.

Reimplemented from chess::uci::Option.

Definition at line 320 of file Options.hpp.


The documentation for this struct was generated from the following file: