binutils-gdb/gdb/python
Artemiy Volkov 3fcf899da1 Support rvalue references in the gdb python module (includes doc/)
This patch adds the ability to inspect rvalue reference types and values using
the gdb python module. This is achieved by creating two wrappers for
valpy_reference_value(), using the ReferenceExplorer class to handle the
objects of rvalue reference types and placing necessary checks for a
TYPE_CODE_RVALUE_REF type code next to the checks for a TYPE_CODE_REF type
code.

gdb/ChangeLog

	PR gdb/14441
	* doc/python.texi (Types in Python): Add TYPE_CODE_RVALUE_REF to
	table of constants.
	* python/lib/gdb/command/explore.py: Support exploring values
	of rvalue reference types.
	* python/lib/gdb/types.py: Implement get_basic_type() for
	rvalue reference types.
	* python/py-type.c (pyty_codes) <TYPE_CODE_RVALUE_REF>: New
	constant.
	* python/py-value.c (valpy_getitem): Add an rvalue reference
	check.
	(valpy_reference_value): Add new parameter "refcode".
	(valpy_lvalue_reference_value, valpy_rvalue_reference_value):
	New wrappers for valpy_reference_value().
	* python/py-xmethods.c (gdbpy_get_xmethod_result_type)
	(gdbpy_invoke_xmethod): Likewise.
2017-03-20 13:47:52 -07:00
..
lib/gdb Support rvalue references in the gdb python module (includes doc/) 2017-03-20 13:47:52 -07:00
py-arch.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-auto-load.c update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
py-block.c update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
py-bpevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-breakpoint.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-cmd.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-continueevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-event.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-event.h Change event code to use gdbpy_ref 2017-01-10 19:13:29 -07:00
py-events.h PR python/13598 - add before_prompt event 2017-02-14 10:38:56 -07:00
py-evtregistry.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-evts.c PR python/13598 - add before_prompt event 2017-02-14 10:38:56 -07:00
py-exitedevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-finishbreakpoint.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-frame.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-framefilter.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-function.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-gdb-readline.c Fix python-interactive with Python 3.6 2017-01-20 20:39:08 -05:00
py-inferior.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-infevents.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-infthread.c update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
py-lazy-string.c Fix various python lazy string bugs. 2017-03-16 09:28:11 -07:00
py-linetable.c Remove some gotos from Python 2017-02-10 12:24:34 -07:00
py-newobjfileevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-objfile.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-param.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-prettyprint.c Change one more spot to use gdbpy_ref 2017-02-10 12:24:33 -07:00
py-progspace.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-record-btrace.c python: Implement btrace Python bindings for record history. 2017-02-14 10:57:56 +01:00
py-record-btrace.h python: Implement btrace Python bindings for record history. 2017-02-14 10:57:56 +01:00
py-record-full.c python: Implement btrace Python bindings for record history. 2017-02-14 10:57:56 +01:00
py-record-full.h python: Implement btrace Python bindings for record history. 2017-02-14 10:57:56 +01:00
py-record.c python: Implement btrace Python bindings for record history. 2017-02-14 10:57:56 +01:00
py-ref.h Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-signalevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-stopevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-stopevent.h update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
py-symbol.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-symtab.c Use gdbpy_ref to simplify some logic 2017-02-10 12:24:32 -07:00
py-threadevent.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-type.c Support rvalue references in the gdb python module (includes doc/) 2017-03-20 13:47:52 -07:00
py-unwind.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-utils.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-value.c Support rvalue references in the gdb python module (includes doc/) 2017-03-20 13:47:52 -07:00
py-varobj.c Turn gdbpy_ref into a template 2017-02-10 12:24:31 -07:00
py-xmethods.c Support rvalue references in the gdb python module (includes doc/) 2017-03-20 13:47:52 -07:00
python-config.py
python-internal.h python: Implement btrace Python bindings for record history. 2017-02-14 10:57:56 +01:00
python.c PR python/13598 - add before_prompt event 2017-02-14 10:38:56 -07:00
python.h update copyright year range in GDB files 2017-01-01 10:52:34 +04:00