зеркало из https://github.com/github/ruby.git
31 строка
860 B
C
31 строка
860 B
C
// -*- c -*-
|
|
// DO NOT MODIFY THIS FILE DIRECTLY.
|
|
// auto-generated file by tool/generic_erb.rb
|
|
// with template/builtin_binary.inc.tmpl
|
|
% unless ARGV.include?('--cross=yes')
|
|
% ary = RubyVM.enum_for(:each_builtin).to_a
|
|
% ary.each{|feature, iseq|
|
|
|
|
static const unsigned char <%= feature %>_bin[] = {
|
|
% iseq \
|
|
% . to_binary \
|
|
% . each_byte \
|
|
% . each_slice(12) {|a|
|
|
<%= a.map{ '0x%02x,' % _1 }.join(' ') %>
|
|
% }
|
|
};
|
|
% }
|
|
|
|
#define BUILTIN_BIN(feature) \
|
|
{ #feature, feature ## _bin, sizeof(feature ## _bin), }
|
|
static const struct builtin_binary builtin_binary[] = {
|
|
% ary.each{|feature, |
|
|
BUILTIN_BIN(<%= feature %>),
|
|
% }
|
|
{ NULL, },/* sentinel */
|
|
};
|
|
|
|
#define BUILTIN_BINARY_SIZE <%= ary.size %>
|
|
STATIC_ASSERT(n_builtin, numberof(builtin_binary) == BUILTIN_BINARY_SIZE + 1);
|
|
% end
|