mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
5e22f873ed
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);
|
|
}
|