mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* enc/trans/escape.trans: use transcode_tblgen.
* tool/transcode-tblgen.rb: generate an empty line after str1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
eee75cc1a6
commit
faa1387484
3 changed files with 25 additions and 57 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
Sun Sep 7 19:45:31 2008 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
|
* enc/trans/escape.trans: use transcode_tblgen.
|
||||||
|
|
||||||
|
* tool/transcode-tblgen.rb: generate an empty line after str1.
|
||||||
|
|
||||||
Sun Sep 7 19:16:38 2008 Tanaka Akira <akr@fsij.org>
|
Sun Sep 7 19:16:38 2008 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
* tool/transcode-tblgen.rb (ActionMap#str_name): new method to
|
* tool/transcode-tblgen.rb (ActionMap#str_name): new method to
|
||||||
|
|
|
@ -5,25 +5,25 @@
|
||||||
str.unpack("H*")[0]
|
str.unpack("H*")[0]
|
||||||
end
|
end
|
||||||
|
|
||||||
map_amp = {}
|
transcode_tblgen("", "amp-escaped", [
|
||||||
map_amp["{00-25,27-FF}"] = :nomap
|
["{00-25,27-FF}", :nomap],
|
||||||
map_amp["26"] = str1("&")
|
["26", str1("&")]
|
||||||
transcode_generate_node(ActionMap.parse(map_amp), "escape_amp_as_chref")
|
])
|
||||||
|
|
||||||
map_xml_text = {}
|
transcode_tblgen("", "xml-text-escaped", [
|
||||||
map_xml_text["{00-25,27-3B,3D,3F-FF}"] = :nomap
|
["{00-25,27-3B,3D,3F-FF}", :nomap],
|
||||||
map_xml_text["26"] = str1("&")
|
["26", str1("&")],
|
||||||
map_xml_text["3C"] = str1("<")
|
["3C", str1("<")],
|
||||||
map_xml_text["3E"] = str1(">")
|
["3E", str1(">")]
|
||||||
transcode_generate_node(ActionMap.parse(map_xml_text), "escape_xml_text")
|
])
|
||||||
|
|
||||||
map_xml_attr_content = {}
|
transcode_tblgen("", "xml-attr-content-escaped", [
|
||||||
map_xml_attr_content["{00-21,23-25,27-3B,3D,3F-FF}"] = :nomap
|
["{00-21,23-25,27-3B,3D,3F-FF}", :nomap],
|
||||||
map_xml_attr_content["22"] = str1(""")
|
["22", str1(""")],
|
||||||
map_xml_attr_content["26"] = str1("&")
|
["26", str1("&")],
|
||||||
map_xml_attr_content["3C"] = str1("<")
|
["3C", str1("<")],
|
||||||
map_xml_attr_content["3E"] = str1(">")
|
["3E", str1(">")]
|
||||||
transcode_generate_node(ActionMap.parse(map_xml_attr_content), "escape_xml_attr_content")
|
])
|
||||||
|
|
||||||
map_xml_attr_quote = {}
|
map_xml_attr_quote = {}
|
||||||
map_xml_attr_quote["{00-FF}"] = :func_so
|
map_xml_attr_quote["{00-FF}"] = :func_so
|
||||||
|
@ -32,42 +32,6 @@
|
||||||
|
|
||||||
<%= transcode_generated_code %>
|
<%= transcode_generated_code %>
|
||||||
|
|
||||||
static const rb_transcoder
|
|
||||||
rb_escape_amp_as_chref = {
|
|
||||||
"", "amp-escaped", escape_amp_as_chref,
|
|
||||||
TRANSCODE_TABLE_INFO,
|
|
||||||
1, /* input_unit_length */
|
|
||||||
1, /* max_input */
|
|
||||||
5, /* max_output */
|
|
||||||
stateless_converter, /* stateful_type */
|
|
||||||
0, NULL, NULL,
|
|
||||||
NULL, NULL, NULL, NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static const rb_transcoder
|
|
||||||
rb_escape_xml_text = {
|
|
||||||
"", "xml-text-escaped", escape_xml_text,
|
|
||||||
TRANSCODE_TABLE_INFO,
|
|
||||||
1, /* input_unit_length */
|
|
||||||
1, /* max_input */
|
|
||||||
5, /* max_output */
|
|
||||||
stateless_converter, /* stateful_type */
|
|
||||||
0, NULL, NULL,
|
|
||||||
NULL, NULL, NULL, NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static const rb_transcoder
|
|
||||||
rb_escape_xml_attr_content = {
|
|
||||||
"", "xml-attr-content-escaped", escape_xml_attr_content,
|
|
||||||
TRANSCODE_TABLE_INFO,
|
|
||||||
1, /* input_unit_length */
|
|
||||||
1, /* max_input */
|
|
||||||
6, /* max_output */
|
|
||||||
stateless_converter, /* stateful_type */
|
|
||||||
0, NULL, NULL,
|
|
||||||
NULL, NULL, NULL, NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
#define END 0
|
#define END 0
|
||||||
#define NORMAL 1
|
#define NORMAL 1
|
||||||
|
|
||||||
|
@ -124,9 +88,7 @@ rb_escape_xml_attr_quote = {
|
||||||
void
|
void
|
||||||
Init_escape(void)
|
Init_escape(void)
|
||||||
{
|
{
|
||||||
rb_register_transcoder(&rb_escape_amp_as_chref);
|
<%= transcode_register_code %>
|
||||||
rb_register_transcoder(&rb_escape_xml_text);
|
|
||||||
rb_register_transcoder(&rb_escape_xml_attr_content);
|
|
||||||
rb_register_transcoder(&rb_escape_xml_attr_quote);
|
rb_register_transcoder(&rb_escape_xml_attr_quote);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -304,7 +304,7 @@ class ActionMap
|
||||||
n = str_name(bytes)
|
n = str_name(bytes)
|
||||||
@bytes_code.insert_at_last(1 + len,
|
@bytes_code.insert_at_last(1 + len,
|
||||||
"\#define #{n} makeSTR1(#{size})\n" +
|
"\#define #{n} makeSTR1(#{size})\n" +
|
||||||
" #{len}," + bytes.gsub(/../, ' 0x\&,') + "\n")
|
" #{len}," + bytes.gsub(/../, ' 0x\&,') + "\n\n")
|
||||||
n
|
n
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue