summaryrefslogtreecommitdiff
path: root/template/builtin_binary.inc.tmpl
blob: 787ced5f3df29d810e76ac526b2844ee7af70936 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// -*- 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            \
%     . map(&:ord)           \
%     . map{ '0x%02x' % _1 } \
%     . each_slice(12) {|a|
    <%= a.join(', ') %>,
%     }
};
%   }

static const struct builtin_binary builtin_binary[] = {
%   ary.each{|feature, |
    { <%= feature.dump %>, <%= feature %>_bin, sizeof(<%= feature %>_bin), },
%   }
    { NULL, },<%# dummy entry %>
};

#define BUILTIN_BINARY_SIZE <%= ary.size %>
STATIC_ASSERT(n_builtin, numberof(builtin_binary) == BUILTIN_BINARY_SIZE + 1);
% end