mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Added rb_warn_deprecated
This commit is contained in:
parent
7aa8a78674
commit
c6c67254fb
6 changed files with 30 additions and 13 deletions
|
@ -466,7 +466,7 @@ enumerator_initialize(int argc, VALUE *argv, VALUE obj)
|
|||
}
|
||||
else {
|
||||
rb_check_arity(argc, 1, UNLIMITED_ARGUMENTS);
|
||||
rb_warn("Enumerator.new without a block is deprecated; use Object#to_enum");
|
||||
rb_warn_deprecated("Enumerator.new without a block", "Object#to_enum");
|
||||
recv = *argv++;
|
||||
if (--argc) {
|
||||
meth = *argv++;
|
||||
|
|
16
error.c
16
error.c
|
@ -325,6 +325,22 @@ rb_enc_warning(rb_encoding *enc, const char *fmt, ...)
|
|||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
rb_warn_deprecated(const char *fmt, const char *suggest, ...)
|
||||
{
|
||||
if (NIL_P(ruby_verbose)) return;
|
||||
if (!rb_warning_category_enabled_p(RB_WARN_CATEGORY_DEPRECATED)) return;
|
||||
va_list args;
|
||||
va_start(args, suggest);
|
||||
VALUE mesg = warning_string(0, fmt, args);
|
||||
va_end(args);
|
||||
rb_str_set_len(mesg, RSTRING_LEN(mesg) - 1);
|
||||
rb_str_cat_cstr(mesg, " is deprecated");
|
||||
if (suggest) rb_str_catf(mesg, "; use %s instead", suggest);
|
||||
rb_str_cat_cstr(mesg, "\n");
|
||||
rb_write_warning_str(mesg);
|
||||
}
|
||||
|
||||
static inline int
|
||||
end_with_asciichar(VALUE str, int c)
|
||||
{
|
||||
|
|
4
hash.c
4
hash.c
|
@ -2245,7 +2245,7 @@ rb_hash_key(VALUE hash, VALUE value)
|
|||
static VALUE
|
||||
rb_hash_index(VALUE hash, VALUE value)
|
||||
{
|
||||
rb_warn("Hash#index is deprecated; use Hash#key");
|
||||
rb_warn_deprecated("Hash#index", "Hash#key");
|
||||
return rb_hash_key(hash, value);
|
||||
}
|
||||
|
||||
|
@ -5861,7 +5861,7 @@ env_key(VALUE dmy, VALUE value)
|
|||
static VALUE
|
||||
env_index(VALUE dmy, VALUE value)
|
||||
{
|
||||
rb_warn("ENV.index is deprecated; use ENV.key");
|
||||
rb_warn_deprecated("ENV.index", "ENV.key");
|
||||
return env_key(dmy, value);
|
||||
}
|
||||
|
||||
|
|
|
@ -1547,6 +1547,7 @@ void rb_report_bug_valist(VALUE file, int line, const char *fmt, va_list args);
|
|||
NORETURN(void rb_async_bug_errno(const char *,int));
|
||||
const char *rb_builtin_type_name(int t);
|
||||
const char *rb_builtin_class_name(VALUE x);
|
||||
PRINTF_ARGS(void rb_warn_deprecated(const char *fmt, const char *suggest, ...), 1, 3);
|
||||
#ifdef RUBY_ENCODING_H
|
||||
VALUE rb_syntax_error_append(VALUE, VALUE, int, int, rb_encoding*, const char*, va_list);
|
||||
PRINTF_ARGS(void rb_enc_warn(rb_encoding *enc, const char *fmt, ...), 2, 3);
|
||||
|
|
16
io.c
16
io.c
|
@ -3810,7 +3810,7 @@ rb_io_each_line(int argc, VALUE *argv, VALUE io)
|
|||
static VALUE
|
||||
rb_io_lines(int argc, VALUE *argv, VALUE io)
|
||||
{
|
||||
rb_warn("IO#lines is deprecated; use #each_line instead");
|
||||
rb_warn_deprecated("IO#lines", "#each_line");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(io, ID2SYM(rb_intern("each_line")), argc, argv);
|
||||
return rb_io_each_line(argc, argv, io);
|
||||
|
@ -3861,7 +3861,7 @@ rb_io_each_byte(VALUE io)
|
|||
static VALUE
|
||||
rb_io_bytes(VALUE io)
|
||||
{
|
||||
rb_warn("IO#bytes is deprecated; use #each_byte instead");
|
||||
rb_warn_deprecated("IO#bytes", "#each_byte");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(io, ID2SYM(rb_intern("each_byte")), 0, 0);
|
||||
return rb_io_each_byte(io);
|
||||
|
@ -4015,7 +4015,7 @@ rb_io_each_char(VALUE io)
|
|||
static VALUE
|
||||
rb_io_chars(VALUE io)
|
||||
{
|
||||
rb_warn("IO#chars is deprecated; use #each_char instead");
|
||||
rb_warn_deprecated("IO#chars", "#each_char");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(io, ID2SYM(rb_intern("each_char")), 0, 0);
|
||||
return rb_io_each_char(io);
|
||||
|
@ -4143,7 +4143,7 @@ rb_io_each_codepoint(VALUE io)
|
|||
static VALUE
|
||||
rb_io_codepoints(VALUE io)
|
||||
{
|
||||
rb_warn("IO#codepoints is deprecated; use #each_codepoint instead");
|
||||
rb_warn_deprecated("IO#codepoints", "#each_codepoint");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(io, ID2SYM(rb_intern("each_codepoint")), 0, 0);
|
||||
return rb_io_each_codepoint(io);
|
||||
|
@ -12479,7 +12479,7 @@ argf_each_line(int argc, VALUE *argv, VALUE argf)
|
|||
static VALUE
|
||||
argf_lines(int argc, VALUE *argv, VALUE argf)
|
||||
{
|
||||
rb_warn("ARGF#lines is deprecated; use #each_line instead");
|
||||
rb_warn_deprecated("ARGF#lines", "#each_line");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(argf, ID2SYM(rb_intern("each_line")), argc, argv);
|
||||
return argf_each_line(argc, argv, argf);
|
||||
|
@ -12526,7 +12526,7 @@ argf_each_byte(VALUE argf)
|
|||
static VALUE
|
||||
argf_bytes(VALUE argf)
|
||||
{
|
||||
rb_warn("ARGF#bytes is deprecated; use #each_byte instead");
|
||||
rb_warn_deprecated("ARGF#bytes", "#each_byte");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(argf, ID2SYM(rb_intern("each_byte")), 0, 0);
|
||||
return argf_each_byte(argf);
|
||||
|
@ -12565,7 +12565,7 @@ argf_each_char(VALUE argf)
|
|||
static VALUE
|
||||
argf_chars(VALUE argf)
|
||||
{
|
||||
rb_warn("ARGF#chars is deprecated; use #each_char instead");
|
||||
rb_warn_deprecated("ARGF#chars", "#each_char");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(argf, ID2SYM(rb_intern("each_char")), 0, 0);
|
||||
return argf_each_char(argf);
|
||||
|
@ -12604,7 +12604,7 @@ argf_each_codepoint(VALUE argf)
|
|||
static VALUE
|
||||
argf_codepoints(VALUE argf)
|
||||
{
|
||||
rb_warn("ARGF#codepoints is deprecated; use #each_codepoint instead");
|
||||
rb_warn_deprecated("ARGF#codepoints", "#each_codepoint");
|
||||
if (!rb_block_given_p())
|
||||
return rb_enumeratorize(argf, ID2SYM(rb_intern("each_codepoint")), 0, 0);
|
||||
return argf_each_codepoint(argf);
|
||||
|
|
4
proc.c
4
proc.c
|
@ -758,8 +758,8 @@ proc_new(VALUE klass, int8_t is_lambda, int8_t kernel)
|
|||
}
|
||||
else {
|
||||
const char *name = kernel ? "Kernel#proc" : "Proc.new";
|
||||
rb_warn("Capturing the given block using %s is deprecated; "
|
||||
"use `&block` instead", name);
|
||||
rb_warn_deprecated("Capturing the given block using %s",
|
||||
"`&block`", name);
|
||||
}
|
||||
}
|
||||
#else
|
||||
|
|
Loading…
Reference in a new issue