GCC Middle and Back End API Reference
diagram.h
Go to the documentation of this file.
1
/* Support for diagrams within diagnostics.
2
Copyright (C) 2023-2025 Free Software Foundation, Inc.
3
Contributed by David Malcolm <dmalcolm@redhat.com>
4
5
This file is part of GCC.
6
7
GCC is free software; you can redistribute it and/or modify it under
8
the terms of the GNU General Public License as published by the Free
9
Software Foundation; either version 3, or (at your option) any later
10
version.
11
12
GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13
WARRANTY; without even the implied warranty of MERCHANTABILITY or
14
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15
for more details.
16
17
You should have received a copy of the GNU General Public License
18
along with GCC; see the file COPYING3. If not see
19
<http://www.gnu.org/licenses/>. */
20
21
#ifndef GCC_DIAGNOSTICS_DIAGRAM_H
22
#define GCC_DIAGNOSTICS_DIAGRAM_H
23
24
namespace
text_art
25
{
26
class
canvas
;
27
}
// namespace text_art
28
29
namespace
diagnostics
{
30
31
/* A text art diagram, along with an "alternative text" string
32
describing it. */
33
34
class
diagram
35
{
36
public
:
37
diagram
(
const
text_art::canvas
&canvas,
38
const
char
*alt_text)
39
:
m_canvas
(canvas),
40
m_alt_text
(alt_text)
41
{
42
gcc_assert
(alt_text);
43
}
44
45
const
text_art::canvas
&
get_canvas
()
const
{
return
m_canvas
; }
46
const
char
*
get_alt_text
()
const
{
return
m_alt_text
; }
47
48
private
:
49
const
text_art::canvas
&
m_canvas
;
50
const
char
*
const
m_alt_text
;
51
};
52
53
}
// namespace diagnostics
54
55
#endif
/* ! GCC_DIAGNOSTICS_DIAGRAM_H */
diagnostics::diagram::get_canvas
const text_art::canvas & get_canvas() const
Definition
diagram.h:45
diagnostics::diagram::m_canvas
const text_art::canvas & m_canvas
Definition
diagram.h:49
diagnostics::diagram::m_alt_text
const char *const m_alt_text
Definition
diagram.h:50
diagnostics::diagram::diagram
diagram(const text_art::canvas &canvas, const char *alt_text)
Definition
diagram.h:37
diagnostics::diagram::get_alt_text
const char * get_alt_text() const
Definition
diagram.h:46
text_art::canvas
Definition
canvas.h:38
diagnostics
Definition
coretypes.h:167
text_art
Definition
diagnostics/context.h:56
gcc_assert
#define gcc_assert(EXPR)
Definition
system.h:814
gcc
diagnostics
diagram.h
Generated by
1.14.0