GDB (xrefs)
common
xml-utils.c
Go to the documentation of this file.
1
/* Shared helper routines for manipulating XML.
2
3
Copyright (C) 2006-2018 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
#include "
common-defs.h
"
21
#include "
xml-utils.h
"
22
23
/* Return a string with special characters from TEXT replaced by entity
24
references. */
25
26
std::string
27
xml_escape_text
(
const
char
*text)
28
{
29
std::string
result;
30
31
/* Expand the result. */
32
for
(
int
i = 0; text[i] !=
'\0'
; i++)
33
switch
(text[i])
34
{
35
case
'\''
:
36
result +=
"'"
;
37
break
;
38
case
'\"'
:
39
result +=
"""
;
40
break
;
41
case
'&'
:
42
result +=
"&"
;
43
break
;
44
case
'<'
:
45
result +=
"<"
;
46
break
;
47
case
'>'
:
48
result +=
">"
;
49
break
;
50
default
:
51
result += text[i];
52
break
;
53
}
54
55
return
result;
56
}
string
const char * string
Definition:
signals.c:50
xml-utils.h
common-defs.h
xml_escape_text
std::string xml_escape_text(const char *text)
Definition:
xml-utils.c:27
Generated by
1.8.14