summaryrefslogtreecommitdiff
path: root/ruby_1_8_5/ext/dl/mkcbtable.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ruby_1_8_5/ext/dl/mkcbtable.rb')
-rw-r--r--ruby_1_8_5/ext/dl/mkcbtable.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/ruby_1_8_5/ext/dl/mkcbtable.rb b/ruby_1_8_5/ext/dl/mkcbtable.rb
new file mode 100644
index 0000000000..165c4bdc88
--- /dev/null
+++ b/ruby_1_8_5/ext/dl/mkcbtable.rb
@@ -0,0 +1,18 @@
+# -*- ruby -*-
+
+require 'mkmf'
+$:.unshift File.dirname(__FILE__)
+require 'type'
+require 'dlconfig'
+
+def mktable(rettype, fnum, argc)
+ code =
+ "rb_dl_callback_table[#{rettype}][#{fnum}] = &rb_dl_callback_func_#{rettype.to_s}_#{fnum};"
+ return code
+end
+
+DLTYPE.keys.sort.each{|t|
+ for n in 0..(MAX_CALLBACK - 1)
+ print(mktable(t, n, 15), "\n")
+ end
+}