mirror of
https://github.com/ruby/ruby.git
synced 2025-09-19 18:43:59 +02:00
Saves comitters' daily life by avoid #include-ing everything from
internal.h to make each file do so instead. This would significantly
speed up incremental builds.
We take the following inclusion order in this changeset:
1. "ruby/config.h", where _GNU_SOURCE is defined (must be the very
first thing among everything).
2. RUBY_EXTCONF_H if any.
3. Standard C headers, sorted alphabetically.
4. Other system headers, maybe guarded by #ifdef
5. Everything else, sorted alphabetically.
Exceptions are those win32-related headers, which tend not be self-
containing (headers have inclusion order dependencies).
17 lines
367 B
C
17 lines
367 B
C
#include "ruby.h"
|
|
#include "internal/string.h"
|
|
|
|
static VALUE
|
|
bug_str_capacity(VALUE klass, VALUE str)
|
|
{
|
|
return
|
|
STR_EMBED_P(str) ? INT2FIX(RSTRING_EMBED_LEN_MAX) : \
|
|
STR_SHARED_P(str) ? INT2FIX(0) : \
|
|
LONG2FIX(RSTRING(str)->as.heap.aux.capa);
|
|
}
|
|
|
|
void
|
|
Init_string_capacity(VALUE klass)
|
|
{
|
|
rb_define_singleton_method(klass, "capacity", bug_str_capacity, 1);
|
|
}
|