mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
id.h.tmpl: preserved ids
* template/id.h.tmpl (preserved_ids): move from parse.y. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
200cea6326
commit
f7c2791c60
2 changed files with 26 additions and 17 deletions
17
parse.y
17
parse.y
|
@ -48,7 +48,7 @@ static ID register_symid_str(ID, VALUE);
|
||||||
#include "id.c"
|
#include "id.c"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define is_notop_id(id) ((id)>tLAST_TOKEN)
|
#define is_notop_id(id) ((id)>tLAST_OP_ID)
|
||||||
#define is_local_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_LOCAL)
|
#define is_local_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_LOCAL)
|
||||||
#define is_global_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_GLOBAL)
|
#define is_global_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_GLOBAL)
|
||||||
#define is_instance_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_INSTANCE)
|
#define is_instance_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_INSTANCE)
|
||||||
|
@ -800,21 +800,6 @@ static void token_info_pop(struct parser_params*, const char *token);
|
||||||
%right tPOW
|
%right tPOW
|
||||||
%right '!' '~' tUPLUS
|
%right '!' '~' tUPLUS
|
||||||
|
|
||||||
%nonassoc idNULL
|
|
||||||
%nonassoc idRespond_to
|
|
||||||
%nonassoc idIFUNC
|
|
||||||
%nonassoc idCFUNC
|
|
||||||
%nonassoc id_core_set_method_alias
|
|
||||||
%nonassoc id_core_set_variable_alias
|
|
||||||
%nonassoc id_core_undef_method
|
|
||||||
%nonassoc id_core_define_method
|
|
||||||
%nonassoc id_core_define_singleton_method
|
|
||||||
%nonassoc id_core_set_postexe
|
|
||||||
%nonassoc id_core_hash_from_ary
|
|
||||||
%nonassoc id_core_hash_merge_ary
|
|
||||||
%nonassoc id_core_hash_merge_ptr
|
|
||||||
%nonassoc id_core_hash_merge_kwd
|
|
||||||
|
|
||||||
%token tLAST_TOKEN
|
%token tLAST_TOKEN
|
||||||
|
|
||||||
%%
|
%%
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
require 'optparse'
|
require 'optparse'
|
||||||
vpath = ["."]
|
vpath = ["."]
|
||||||
input = nil
|
input = nil
|
||||||
|
|
||||||
opt = OptionParser.new do |o|
|
opt = OptionParser.new do |o|
|
||||||
o.on('-v', '--vpath=DIR') {|dirs| vpath.concat dirs.split(File::PATH_SEPARATOR)}
|
o.on('-v', '--vpath=DIR') {|dirs| vpath.concat dirs.split(File::PATH_SEPARATOR)}
|
||||||
input, = o.order!(ARGV)
|
input, = o.order!(ARGV)
|
||||||
|
@ -48,6 +49,23 @@ method_ids = %w[
|
||||||
Bitblt
|
Bitblt
|
||||||
Answer
|
Answer
|
||||||
]
|
]
|
||||||
|
|
||||||
|
preserved_ids = %w[
|
||||||
|
NULL
|
||||||
|
Respond_to
|
||||||
|
IFUNC
|
||||||
|
CFUNC
|
||||||
|
_core_set_method_alias
|
||||||
|
_core_set_variable_alias
|
||||||
|
_core_undef_method
|
||||||
|
_core_define_method
|
||||||
|
_core_define_singleton_method
|
||||||
|
_core_set_postexe
|
||||||
|
_core_hash_from_ary
|
||||||
|
_core_hash_merge_ary
|
||||||
|
_core_hash_merge_ptr
|
||||||
|
_core_hash_merge_kwd
|
||||||
|
]
|
||||||
%>
|
%>
|
||||||
#ifndef RUBY_ID_H
|
#ifndef RUBY_ID_H
|
||||||
#define RUBY_ID_H
|
#define RUBY_ID_H
|
||||||
|
@ -105,7 +123,13 @@ enum ruby_method_ids {
|
||||||
idNeqTilde = tNMATCH,
|
idNeqTilde = tNMATCH,
|
||||||
idAREF = tAREF,
|
idAREF = tAREF,
|
||||||
idASET = tASET,
|
idASET = tASET,
|
||||||
idLAST_TOKEN = tLAST_TOKEN >> ID_SCOPE_SHIFT,
|
tPRESERVED_ID_BEGIN = tLAST_TOKEN-1,
|
||||||
|
% preserved_ids.each do |token|
|
||||||
|
id<%=token%>,
|
||||||
|
% end
|
||||||
|
tPRESERVED_ID_END,
|
||||||
|
tLAST_OP_ID = tPRESERVED_ID_END-1,
|
||||||
|
idLAST_OP_ID = tLAST_OP_ID >> ID_SCOPE_SHIFT,
|
||||||
% method_ids.each do |token|
|
% method_ids.each do |token|
|
||||||
t<%=token%>,
|
t<%=token%>,
|
||||||
% end
|
% end
|
||||||
|
|
Loading…
Add table
Reference in a new issue