summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2020-06-09 22:28:53 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2020-10-12 16:21:09 +0900
commitf1c06eef7c17a5bf2ea4a35021d563af5f3147a9 (patch)
tree283c01d4594bfe7079eb3659f85aa5aa33228e43
parent449317a251380c527b4cb296af95e51f4883d74c (diff)
downloadmruby-f1c06eef7c17a5bf2ea4a35021d563af5f3147a9.tar.gz
mruby-f1c06eef7c17a5bf2ea4a35021d563af5f3147a9.zip
Scan more symbols from Ruby files by `rake gensym`.
-rw-r--r--Rakefile7
1 files changed, 6 insertions, 1 deletions
diff --git a/Rakefile b/Rakefile
index d5a7b95bb..75ed5c905 100644
--- a/Rakefile
+++ b/Rakefile
@@ -152,6 +152,7 @@ file presym_file => cfiles+rbfiles+[__FILE__] do
src.scan(/mrb_define_method\([^\n"]*"([^\n"]*)"/),
src.scan(/mrb_define_class\([^\n"]*"([^\n"]*)"/),
src.scan(/mrb_define_module\([^\n"]*"([^\n"]*)"/),
+ src.scan(/mrb_define_module_function\([^\n"]*"([^\n"]*)"/),
src.scan(/MRB_SYM\((\w+)\)/),
src.scan(/MRB_QSYM\((\w+)\)/).map{|x,|
x.sub!(/_p$/, "?") || x.sub!(/_b$/, "!") || x.sub!(/_e$/, "=") || x.sub!(/^a_/, "@") || x.sub!(/^d_/, "$")
@@ -161,7 +162,11 @@ file presym_file => cfiles+rbfiles+[__FILE__] do
src = File.read(f)
[src.scan(/\bclass +([A-Z]\w*)/),
src.scan(/\bmodule +([A-Z]\w*)/),
- src.scan(/\bdef +(\w+)/)]
+ src.scan(/\bdef +(\w+[!?]?)/),
+ src.scan(/\balias +(\w+[!?]?)/),
+ src.scan(/\b([A-Z]\w+) *=/),
+ src.scan(/(@\w+)/),
+ src.scan(/:(\w+)/)]
end
symbols = (csymbols+rbsymbols+op_table.keys).flatten.compact.uniq.sort
presyms = File.readlines(presym_file) rescue []