GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Enumerations | Functions | Variables
scm-param.c File Reference
#include "defs.h"
#include "value.h"
#include "charset.h"
#include "gdbcmd.h"
#include "cli/cli-decode.h"
#include "completer.h"
#include "language.h"
#include "arch-utils.h"
#include "guile-internal.h"

Go to the source code of this file.

Classes

union  pascm_variable
 
struct  param_smob
 

Enumerations

enum  scm_param_types {
  param_boolean , param_auto_boolean , param_zinteger , param_uinteger ,
  param_zuinteger , param_zuinteger_unlimited , param_string , param_string_noescape ,
  param_optional_filename , param_filename , param_enum
}
 

Functions

static setting make_setting (param_smob *s)
 
static int pascm_is_valid (param_smob *)
 
static const char * pascm_param_type_name (enum scm_param_types type)
 
static SCM pascm_param_value (const setting &var, int arg_pos, const char *func_name)
 
static int pascm_print_param_smob (SCM self, SCM port, scm_print_state *pstate)
 
static SCM pascm_make_param_smob (void)
 
static int pascm_is_parameter (SCM scm)
 
static SCM gdbscm_parameter_p (SCM scm)
 
static SCM pascm_get_param_arg_unsafe (SCM self, int arg_pos, const char *func_name)
 
static param_smobpascm_get_param_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name)
 
static char * get_doc_string (void)
 
static void pascm_signal_setshow_error (SCM exception, const char *msg)
 
static void pascm_set_func (const char *args, int from_tty, struct cmd_list_element *c)
 
static void pascm_show_func (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static set_show_commands add_setshow_generic (enum var_types param_type, const literal_def *extra_literals, enum command_class cmd_class, char *cmd_name, param_smob *self, char *set_doc, char *show_doc, char *help_doc, cmd_func_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
 
static const char *const * compute_enum_list (SCM enum_values_scm, int arg_pos, const char *func_name)
 
static int pascm_valid_parameter_type_p (int param_type)
 
static void pascm_set_param_value_x (param_smob *p_smob, const char *const *enumeration, SCM value, int arg_pos, const char *func_name)
 
static size_t pascm_free_parameter_smob (SCM self)
 
static SCM gdbscm_make_parameter (SCM name_scm, SCM rest)
 
static int pascm_parameter_defined_p (const char *name, struct cmd_list_element *list)
 
static SCM gdbscm_register_parameter_x (SCM self)
 
static SCM gdbscm_parameter_value (SCM self)
 
static SCM gdbscm_set_parameter_value_x (SCM self, SCM value)
 
void gdbscm_initialize_parameters (void)
 

Variables

struct { 
 
   enum var_types   type 
 
   const literal_def *   extra_literals 
 
param_to_var [] 
 
static const char param_smob_name [] = "gdb:parameter"
 
static scm_t_bits parameter_smob_tag
 
static SCM command_class_keyword
 
static SCM parameter_type_keyword
 
static SCM enum_list_keyword
 
static SCM set_func_keyword
 
static SCM show_func_keyword
 
static SCM doc_keyword
 
static SCM set_doc_keyword
 
static SCM show_doc_keyword
 
static SCM initial_value_keyword
 
static SCM auto_keyword
 
static const scheme_integer_constant parameter_types []
 
static const scheme_function parameter_functions []
 

Enumeration Type Documentation

◆ scm_param_types

Enumerator
param_boolean 
param_auto_boolean 
param_zinteger 
param_uinteger 
param_zuinteger 
param_zuinteger_unlimited 
param_string 
param_string_noescape 
param_optional_filename 
param_filename 
param_enum 

Definition at line 121 of file scm-param.c.

Function Documentation

◆ add_setshow_generic()

static set_show_commands add_setshow_generic ( enum var_types param_type,
const literal_def * extra_literals,
enum command_class cmd_class,
char * cmd_name,
param_smob * self,
char * set_doc,
char * show_doc,
char * help_doc,
cmd_func_ftype * set_func,
show_value_ftype * show_func,
struct cmd_list_element ** set_list,
struct cmd_list_element ** show_list )
static

◆ compute_enum_list()

static const char *const * compute_enum_list ( SCM enum_values_scm,
int arg_pos,
const char * func_name )
static

◆ gdbscm_initialize_parameters()

void gdbscm_initialize_parameters ( void )

◆ gdbscm_make_parameter()

static SCM gdbscm_make_parameter ( SCM name_scm,
SCM rest )
static

◆ gdbscm_parameter_p()

static SCM gdbscm_parameter_p ( SCM scm)
static

Definition at line 269 of file scm-param.c.

References pascm_is_parameter().

◆ gdbscm_parameter_value()

static SCM gdbscm_parameter_value ( SCM self)
static

◆ gdbscm_register_parameter_x()

static SCM gdbscm_register_parameter_x ( SCM self)
static

◆ gdbscm_set_parameter_value_x()

static SCM gdbscm_set_parameter_value_x ( SCM self,
SCM value )
static

◆ get_doc_string()

static char * get_doc_string ( void )
static

Definition at line 310 of file scm-param.c.

Referenced by gdbscm_make_parameter(), and parmpy_init().

◆ make_setting()

static setting make_setting ( param_smob * s)
static

◆ pascm_free_parameter_smob()

static size_t pascm_free_parameter_smob ( SCM self)
static

◆ pascm_get_param_arg_unsafe()

static SCM pascm_get_param_arg_unsafe ( SCM self,
int arg_pos,
const char * func_name )
static

Definition at line 278 of file scm-param.c.

References param_smob_name, and pascm_is_parameter().

Referenced by pascm_get_param_smob_arg_unsafe().

◆ pascm_get_param_smob_arg_unsafe()

static param_smob * pascm_get_param_smob_arg_unsafe ( SCM self,
int arg_pos,
const char * func_name )
static

◆ pascm_is_parameter()

static int pascm_is_parameter ( SCM scm)
static

◆ pascm_is_valid()

static int pascm_is_valid ( param_smob * p_smob)
static

◆ pascm_make_param_smob()

static SCM pascm_make_param_smob ( void )
static

◆ pascm_param_type_name()

static const char * pascm_param_type_name ( enum scm_param_types type)
static

Definition at line 615 of file scm-param.c.

References scheme_integer_constant::name, and parameter_types.

Referenced by gdbscm_make_parameter().

◆ pascm_param_value()

static SCM pascm_param_value ( const setting & var,
int arg_pos,
const char * func_name )
static

◆ pascm_parameter_defined_p()

static int pascm_parameter_defined_p ( const char * name,
struct cmd_list_element * list )
static

Definition at line 1076 of file scm-param.c.

References CMD_LIST_AMBIGUOUS, lookup_cmd_1(), and name.

Referenced by gdbscm_register_parameter_x().

◆ pascm_print_param_smob()

static int pascm_print_param_smob ( SCM self,
SCM port,
scm_print_state * pstate )
static

◆ pascm_set_func()

static void pascm_set_func ( const char * args,
int from_tty,
struct cmd_list_element * c )
static

◆ pascm_set_param_value_x()

static void pascm_set_param_value_x ( param_smob * p_smob,
const char *const * enumeration,
SCM value,
int arg_pos,
const char * func_name )
static

◆ pascm_show_func()

static void pascm_show_func ( struct ui_file * file,
int from_tty,
struct cmd_list_element * c,
const char * value )
static

◆ pascm_signal_setshow_error()

static void pascm_signal_setshow_error ( SCM exception,
const char * msg )
static

◆ pascm_valid_parameter_type_p()

static int pascm_valid_parameter_type_p ( int param_type)
static

Definition at line 599 of file scm-param.c.

References scheme_integer_constant::name, and parameter_types.

Referenced by gdbscm_make_parameter().

Variable Documentation

◆ auto_keyword

SCM auto_keyword
static

◆ command_class_keyword

SCM command_class_keyword
static

Definition at line 193 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ doc_keyword

SCM doc_keyword
static

Definition at line 198 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ enum_list_keyword

SCM enum_list_keyword
static

Definition at line 195 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ extra_literals

const literal_def* extra_literals

◆ initial_value_keyword

SCM initial_value_keyword
static

Definition at line 201 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ param_smob_name

const char param_smob_name[] = "gdb:parameter"
static

◆ [struct]

const struct { ... } param_to_var[]
Initial value:
=
{
}
const literal_def pinteger_unlimited_literals[]
const literal_def uinteger_unlimited_literals[]
@ var_optional_filename
Definition command.h:108
@ var_pinteger
Definition command.h:97
@ var_integer
Definition command.h:93
@ var_string
Definition command.h:102
@ var_boolean
Definition command.h:78
@ var_auto_boolean
Definition command.h:85
@ var_string_noescape
Definition command.h:105
@ var_filename
Definition command.h:110
@ var_uinteger
Definition command.h:89
@ var_enum
Definition command.h:114

Referenced by gdbscm_make_parameter().

◆ parameter_functions

const scheme_function parameter_functions[]
static

Definition at line 1219 of file scm-param.c.

Referenced by gdbscm_initialize_parameters().

◆ parameter_smob_tag

scm_t_bits parameter_smob_tag
static

◆ parameter_type_keyword

SCM parameter_type_keyword
static

Definition at line 194 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ parameter_types

const scheme_integer_constant parameter_types[]
static
Initial value:
=
{
{ "PARAM_BOOLEAN", param_boolean },
{ "PARAM_AUTO_BOOLEAN", param_auto_boolean },
{ "PARAM_ZINTEGER", param_zinteger },
{ "PARAM_UINTEGER", param_uinteger },
{ "PARAM_ZUINTEGER", param_zuinteger },
{ "PARAM_ZUINTEGER_UNLIMITED", param_zuinteger_unlimited },
{ "PARAM_STRING", param_string },
{ "PARAM_STRING_NOESCAPE", param_string_noescape },
{ "PARAM_OPTIONAL_FILENAME", param_optional_filename },
{ "PARAM_FILENAME", param_filename },
{ "PARAM_ENUM", param_enum },
}
#define END_INTEGER_CONSTANTS
@ param_boolean
Definition scm-param.c:123
@ param_auto_boolean
Definition scm-param.c:124
@ param_uinteger
Definition scm-param.c:126
@ param_string_noescape
Definition scm-param.c:130
@ param_zuinteger
Definition scm-param.c:127
@ param_optional_filename
Definition scm-param.c:131
@ param_zinteger
Definition scm-param.c:125
@ param_zuinteger_unlimited
Definition scm-param.c:128
@ param_enum
Definition scm-param.c:133
@ param_string
Definition scm-param.c:129
@ param_filename
Definition scm-param.c:132

Definition at line 579 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), pascm_param_type_name(), and pascm_valid_parameter_type_p().

◆ set_doc_keyword

SCM set_doc_keyword
static

Definition at line 199 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ set_func_keyword

SCM set_func_keyword
static

Definition at line 196 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ show_doc_keyword

SCM show_doc_keyword
static

Definition at line 200 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ show_func_keyword

SCM show_func_keyword
static

Definition at line 197 of file scm-param.c.

Referenced by gdbscm_initialize_parameters(), and gdbscm_make_parameter().

◆ type

enum var_types type

Definition at line 142 of file scm-param.c.

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), ada_array_bound_from_type(), ada_array_element_type(), ada_atr_enum_val(), ada_check_typedef(), ada_coerce_to_simple_array_type(), ada_get_decoded_type(), ada_get_tcb_types_info(), ada_get_tsd_from_tag(), ada_tasks_inferior_data_sniffer(), ada_to_fixed_type(), ada_to_fixed_type_1(), ada_typedef_target_type(), ada_unop_atr(), ada_value_primitive_field(), ada_value_print_inner(), ada_variant_discrim_name(), ada_varobj_ind(), ada_varobj_simple_array_elt(), ada_varobj_struct_elt(), add_reg(), add_set_or_show_cmd(), add_to_method_list(), add_undefined_type_1(), add_undefined_type_noname(), alloc_type_instance(), arch_flags_type(), arm_pc_is_thumb(), arm_print_float_info(), bfd_uses_spe_extensions(), language_arch_info::bool_type(), bp_location::bp_location(), BP_MANIPULATION(), bptype_string(), c_is_path_expr_parent(), c_textual_element_type(), c_type_of_child(), c_value_print(), check_field(), check_parameter_typelist(), check_typedef(), classify_inner_name(), classify_inner_name(), classify_name(), cleanup_undefined_types_1(), cleanup_undefined_types_noname(), coff_alloc_type(), coff_read_enum_type(), coff_read_struct_type(), constrained_packed_array_type(), convert_symbol_bmsym(), convert_symbol_bmsym(), copy_type_recursive(), cp_find_type_baseclass_by_name(), cp_lookup_bare_symbol(), cp_pass_by_reference(), cplus_describe_child(), cplus_number_of_children(), cplus_type_of_child(), create_enum(), d_lookup_symbol(), cpname_state::d_qualify(), dbx_init_float_type(), decode_base_type(), decode_constrained_packed_array(), decode_type(), desc_base_type(), disassemble_dwarf_expression(), py_ui_out::do_begin(), expr::unop_memval_type_operation::do_generate_ax(), dwarf2_compute_name(), dwarf2_evaluate_loc_desc_full(), dwarf2_fetch_constant_bytes(), dwarf2_init_float_type(), dwarf2_init_integer_type(), dynamic_template_type(), empty_record(), eval_op_m2_high(), eval_op_m2_subscript(), eval_op_objc_msgcall(), expr::ada_var_value_operation::evaluate(), expr::ada_structop_operation::evaluate(), expr::c_string_operation::evaluate(), expr::rust_struct_anon::evaluate(), expr::rust_structop::evaluate(), dwarf_expr_context::execute_stack_op(), fbsd_get_siginfo_type(), dwarf_expr_context::fetch_result(), find_function_in_inferior(), find_method_list(), find_primitive_type(), type::fixed_point_type_base_type(), float_type_from_length(), fortran_adjust_dynamic_array_base_address_hack(), fortran_preserve_arg_pointer(), fprint_target_auxv(), func_addr_to_tail_call_list(), gdbscm_lookup_type(), gdbscm_type_next_field_x(), gdbscm_value_to_bool(), gdbscm_value_to_bytevector(), gdbscm_value_to_integer(), gdbscm_value_to_lazy_string(), gdbscm_value_to_real(), gen_bitfield_ref(), gen_cast(), gen_expr_binop_rest(), gen_struct_elt_for_reference(), gen_struct_ref(), get_base_type(), compile_instance::get_cached_type(), get_signatured_type(), get_target_type(), rust_parser::get_type(), get_type(), gnuv3_baseclass_offset(), gnuv3_get_typeid(), gnuv3_print_vtable(), ia64_push_dummy_call(), info_mach_ports_command(), compile_instance::insert_type(), mips_linux_nat_target::insert_watchpoint(), inspect_type(), iq2000_push_dummy_call(), rust_parser::lex_number(), linux_get_siginfo_type_with_fields(), linux_ns_get_namespace(), locexpr_get_frame_base(), loclist_get_frame_base(), lookup_opencl_vector_type(), lookup_typename(), m32r_push_dummy_call(), m68hc11_push_dummy_call(), make_qualified_type(), mi_print_value_p(), mnsh_main(), mnsh_recv_fd(), mnsh_recv_int(), mnsh_recv_intstr(), mnsh_recv_message(), mnsh_send_message(), nds32_check_calling_use_fpr(), nds32_push_dummy_call(), parse_amd_dbgapi_register_type(), parse_amd_dbgapi_register_type_scalar(), cpname_state::parse_number(), parse_string_or_char(), parse_tracepoint_definition(), ppc64_aggregate_candidate(), print_children(), print_record_type(), print_string_repr(), print_type_scalar(), process_one_symbol(), process_structure_scope(), procfs_breakpoint(), quirk_ada_thick_pointer(), read_alias(), read_array_type(), read_array_type(), read_base_type(), read_enum_type(), read_enumeration_type(), read_module(), read_module_type(), read_namespace(), read_namespace_type(), read_ofile_symtab(), read_range_type(), read_struct_type(), read_structure_type(), read_subroutine_type(), read_sun_builtin_type(), read_tag_pointer_type(), read_tag_ptr_to_member_type(), read_tag_reference_type(), read_tag_string_type(), read_type(), read_unspecified_type(), record_full_entry_release(), reggroups_dump(), resolve_dynamic_array_or_string(), resolve_dynamic_type_internal(), riscv_arg_location(), riscv_register_type(), rs6000_lynx178_push_dummy_call(), rs6000_push_dummy_call(), rust_parser::rust_lookup_type(), rust_slice_type(), rust_subscript(), s390_effective_inner_type(), safe_parse_type(), record_full_base_target::save_record(), sdata_make_value(), search_minsyms_for_name(), language_arch_info::set_bool_type(), set_die_type(), language_arch_info::set_string_char_type(), set_type(), dwarf2_per_objfile::set_type_for_signatured_type(), sh_push_dummy_call_fpu(), sh_push_dummy_call_nofpu(), smash_type(), sparc64_ccr_type(), sparc64_fprs_type(), sparc64_fsr_type(), sparc64_pstate_type(), sparc_fsr_type(), sparc_psr_type(), static_unwrap_type(), strace_command(), strip_range_type(), target_auxv_search(), target_to_connection_object(), template_to_static_fixed_type(), to_fixed_range_type(), to_record_with_fixed_variant_part(), to_static_fixed_type(), tui_is_window_visible(), type_name_or_error(), type_system_address(), typename_stoken(), typy_fields_items(), typy_get_composite(), typy_lookup_type(), typy_lookup_typename(), tyscm_get_composite(), tyscm_lookup_typename(), tyscm_scm_from_type(), update_watchpoint(), valpy_do_cast(), valpy_getitem(), valpy_lazy_string(), valpy_nonzero(), value_assign(), value_cast(), value_complement(), value_neg(), value_nsstring(), value_pos(), value_reinterpret_cast(), value_rtti_indirect_type(), value_struct_elt_for_reference(), expr::fortran_undetermined::value_subarray(), value_virtual_fn_field(), varobj_default_value_is_changeable_p(), varobj_editable_p(), varobj_get_value_type(), gnu_nat_target::wait(), whatis_exp(), write_int(), write_var_or_type(), write_var_or_type_completion(), and yyparse().