1/* Python interface to instruction objects.
2
3   Copyright 2017-2024 Free Software Foundation, Inc.
4
5   This file is part of GDB.
6
7   This program is free software; you can redistribute it and/or modify
8   it under the terms of the GNU General Public License as published by
9   the Free Software Foundation; either version 3 of the License, or
10   (at your option) any later version.
11
12   This program is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU General Public License for more details.
16
17   You should have received a copy of the GNU General Public License
18   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19
20#ifndef PYTHON_PY_INSTRUCTION_H
21#define PYTHON_PY_INSTRUCTION_H
22
23#include "python-internal.h"
24
25/* Return a pointer to the py_insn_type object (see py-instruction.c), but
26   ensure that PyType_Ready has been called for the type first.  If the
27   PyType_Ready call is successful then subsequent calls to this function
28   will not call PyType_Ready, the type pointer will just be returned.
29
30   If the PyType_Ready call is not successful then nullptr is returned and
31   subsequent calls to this function will call PyType_Ready again.  */
32
33extern PyTypeObject *py_insn_get_insn_type ();
34
35#endif /* PYTHON_PY_INSTRUCTION_H */
36