This commit is contained in:
Nobuyoshi Nakada 2020-02-03 14:19:02 +09:00
Родитель 0ab7f2f222
Коммит db69c50987
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4BC7D6DF58D8DF60
1 изменённых файлов: 14 добавлений и 14 удалений

Просмотреть файл

@ -2331,37 +2331,37 @@ ERRORFUNC(("variable argument length doesn't match"), void rb_scan_args_length_m
# define rb_scan_args_isdigit(c) ((unsigned char)((c)-'0')<10)
# define rb_scan_args_count_end(fmt, ofs, vari) \
(fmt[ofs] ? -1 : (vari))
((fmt)[ofs] ? -1 : (vari))
# define rb_scan_args_count_block(fmt, ofs, vari) \
(fmt[ofs]!='&' ? \
((fmt)[ofs]!='&' ? \
rb_scan_args_count_end(fmt, ofs, vari) : \
rb_scan_args_count_end(fmt, ofs+1, vari+1))
rb_scan_args_count_end(fmt, (ofs)+1, (vari)+1))
# define rb_scan_args_count_hash(fmt, ofs, vari) \
(fmt[ofs]!=':' ? \
((fmt)[ofs]!=':' ? \
rb_scan_args_count_block(fmt, ofs, vari) : \
rb_scan_args_count_block(fmt, ofs+1, vari+1))
rb_scan_args_count_block(fmt, (ofs)+1, (vari)+1))
# define rb_scan_args_count_trail(fmt, ofs, vari) \
(!rb_scan_args_isdigit(fmt[ofs]) ? \
(!rb_scan_args_isdigit((fmt)[ofs]) ? \
rb_scan_args_count_hash(fmt, ofs, vari) : \
rb_scan_args_count_hash(fmt, ofs+1, vari+(fmt[ofs]-'0')))
rb_scan_args_count_hash(fmt, (ofs)+1, (vari)+((fmt)[ofs]-'0')))
# define rb_scan_args_count_var(fmt, ofs, vari) \
(fmt[ofs]!='*' ? \
((fmt)[ofs]!='*' ? \
rb_scan_args_count_trail(fmt, ofs, vari) : \
rb_scan_args_count_trail(fmt, ofs+1, vari+1))
rb_scan_args_count_trail(fmt, (ofs)+1, (vari)+1))
# define rb_scan_args_count_opt(fmt, ofs, vari) \
(!rb_scan_args_isdigit(fmt[ofs]) ? \
(!rb_scan_args_isdigit((fmt)[ofs]) ? \
rb_scan_args_count_var(fmt, ofs, vari) : \
rb_scan_args_count_var(fmt, ofs+1, vari+fmt[ofs]-'0'))
rb_scan_args_count_var(fmt, (ofs)+1, (vari)+(fmt)[ofs]-'0'))
# define rb_scan_args_count_lead(fmt, ofs, vari) \
(!rb_scan_args_isdigit(fmt[ofs]) ? \
(!rb_scan_args_isdigit((fmt)[ofs]) ? \
rb_scan_args_count_var(fmt, ofs, vari) : \
rb_scan_args_count_opt(fmt, ofs+1, vari+fmt[ofs]-'0'))
rb_scan_args_count_opt(fmt, (ofs)+1, (vari)+(fmt)[ofs]-'0'))
# define rb_scan_args_count(fmt) rb_scan_args_count_lead(fmt, 0, 0)