summaryrefslogtreecommitdiff
path: root/template/id.h.tmpl
AgeCommit message (Collapse)Author
2017-02-11parse.y: TOKEN2IDnobu
* parse.y (TOKEN2ID): add macro which maps static tokens to IDs. * template/id.h.tmpl (TOKEN2*ID, DEFINE_*ID_FROM_TOKEN): separate into macros, token to ID mapping and enum definitions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-05id.h.tmpl: no optparse herenobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-05id.def: token_opsnobu
* defs/id.def (token_ops): gather associations between IDs, operators, and parser tokens. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-26parse.y: fix rippernobu
* parse.y (call_op, call_op2): fix values on ripper. [Feature #11537] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-22Safe navigation operatornobu
* compile.c (iseq_peephole_optimize): peephole optimization for branchnil jumps. * compile.c (iseq_compile_each): generate save navigation operator code. * insns.def (branchnil): new opcode to pop the tos and branch if it is nil. * parse.y (NEW_QCALL, call_op, parser_yylex): parse token '.?'. [Feature #11537] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-07-27* template/id.h.tmpl (ID2ATTRSET): remove an unused macro.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-27id.h.tmpl: ANDOP and OROPnobu
* template/id.h.tmpl (token_op_ids): define && and || for ripper. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-27parse.y: optimize IDs in rippernobu
* parse.y: optimize ripper_intern calls, ::, **, -@, +@, <=>, >=, <=, ==, ===, !=, =~, !~, <<, >>, and call. * parse.y: use initialized IDs, warn and warning. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-11symbol.c: remove dependency on parse.hnobu
* symbol.c (op_tbl): remove non-regular symbols. * symbol.c (global_symbols): start from the next of the preserved ID. * symbol.c: (rb_id2str): op_tbl does not exceed tLAST_OP_ID. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-26* parse.y: support Symbol GC. [ruby-trunk Feature #9634]nari
See this ticket about Symbol GC. * include/ruby/ruby.h: Declare few functions. * rb_sym2id: almost same as old SYM2ID but support dynamic symbols. * rb_id2sym: almost same as old ID2SYM but support dynamic symbols. * rb_sym2str: almost same as `rb_id2str(SYM2ID(sym))` but not pin down a dynamic symbol. Declare a new struct. * struct RSymbol: represents a dynamic symbol as object in Ruby's heaps. Add few macros. * STATIC_SYM_P: check a static symbol. * DYNAMIC_SYM_P: check a dynamic symbol. * RSYMBOL: cast to RSymbol * gc.c: declare RSymbol. support T_SYMBOL. * internal.h: Declare few functions. * rb_gc_free_dsymbol: free up a dynamic symbol. GC call this function at a sweep phase. * rb_str_dynamic_intern: convert a string to a dynamic symbol. * rb_check_id_without_pindown: not pinning function. * rb_sym2id_without_pindown: ditto. * rb_check_id_cstr_without_pindown: ditto. * string.c (Init_String): String#intern and String#to_sym use rb_str_dynamic_intern. * template/id.h.tmpl: use LSB of ID as a flag for determining a static symbol, so we shift left other ruby_id_types. * string.c: use rb_sym2str instead `rb_id2str(SYM2ID(sym))` to avoid pinning. * load.c: use xx_without_pindown function at creating temporary ID to avoid pinning. * object.c: ditto. * sprintf.c: ditto. * struct.c: ditto. * thread.c: ditto. * variable.c: ditto. * vm_method.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-20.gdbinit: show ID typenobu
* .gdbinit (rp_id): show ID type. * template/id.h.tmpl (ruby_id_types): make enum for debugger. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21id.h.tmpl: ID2ATTRSETnobu
* template/id.h.tmpl (ID2ATTRSET): compile time constant macro for ID_ATTRSET. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21id.def: check duplicationnobu
* defs/id.def (KeywordError): check duplication. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21id.def: other scope IDnobu
* defs/id.def: support for other scope IDs, ID_{INSTANCE,GLOBAL,CONST,CLASS}. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04id.c: generatenobu
* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04id.h.tmpl: remove unused idnobu
* template/id.h.tmpl (attr_ids): remove Bitblt and Answer which are no longer predefined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03id.h.tmpl: move empty?nobu
* template/id.h.tmpl (preserved_ids): "empty?" is not an attribute name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01vm_method.c: make initialize methods privatenobu
* id.c (Init_id), template/id.h.tmpl: add initialize_{copy,clone,dup} and respond_to_missing?. * vm_method.c (rb_method_entry_make): make above methods private. [Feature #6539] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-26* insns.def: add new instruction `opt_empty_p' for optimize `empty?'ko1
method. Apply a patch proposed at [ruby-dev:46120] [ruby-trunk - Feature #6972] by Glass_saga (Masaki Matsushita). * compile.c (iseq_specialized_instruction), vm.c, vm_insnhelper.h: ditto. * id.c, template/id.h.tmpl: ditto. * test/ruby/test_optimization.rb: test for this changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31id.h: independent from parse.hnobu
* template/id.h.tmpl, tool/id2token.rb: make id.h independent from parse.h, and make parse.c dependent on it instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-25generic_erb.rb: --vpath optionnobu
* tool/generic_erb.rb (vpath.open): move --vpath option from template/id.h.tmpl. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17id.h.tmpl: preserved idsnobu
* 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
2012-08-17id.h.tmpl: joke method namesnobu
* template/id.h.tmpl (method_ids): create also joke method names non-separatedly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17* id.c: move vm_opts.h dependency.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14method_idsnobu
* template/id.h.tmpl (method_ids): define at once predefined method IDs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-26* template/id.h.tmpl: parenthesize macro arguments.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-12* template/id.h.tmpl: suppress all warning: "SUPPORT_JOKE" is notkazu
defined. [ruby-dev:42730] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-10* template/id.h.tmpl (ruby_method_ids): suppress warnings.nobu
[ruby-dev:42730] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-20* id.c (Init_id): add underscore name.nobu
* parse.y (warn_unused_var): ignore underscore name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-06* template/id.h.tmpl: fix this.ko1
* id.h: removed. Because this file is generated automatically. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21* template/id.h.tmpl, id.h (enum ruby_method_ids): added some IDs.nobu
* debug.c (dummy_gdb_enums): added enum ruby_method_ids. * .gdbinit (rp): improved output of Symbol. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-24* template/id.h.tmpl, id.h (ruby_method_ids_check): enclosed in anobu
struct. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-24* template/id.h.tmpl, id.h (ruby_method_ids): not depend on ifnobu
token are defined as macros. [ruby-dev:37553] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-15* id.h, template/id.h.tmpl (ruby_method_ids): sees YYTOKENTYPE too.nobu
[ruby-dev:37436] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-09* id.h, include/ruby/{intern,oniguruma}.h, regenc.h, regparse.h,nobu
template/*.tmpl: removed trailing garbage spaces. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-24* id.h, template/id.h.tmpl (enum ruby_method_ids): reordered.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-19* common.mk (srcs): removed ID_H_TARGET.nobu
* tool/generic_erb.rb: always overwrites if no if-change option. * template/id.h.tmpl: shows which token differs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-17* id.h: reverted.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-17* common.mk (ID_H_TARGET): phony target to update id.h.nobu
* tool/ifchange, win32/ifchange.bat: --timestamp option added. * tool/generic_erb.rb: --timestamp, --output and --if-change options added. * template/id.h.tmpl: moved from id.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e