1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

14 commits

Author SHA1 Message Date
usa
0c9fe2130f * include/ruby/st.h: need to include defines.h because LONG_LONG is
defined there.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-23 05:19:27 +00:00
nobu
36eed7bdfb * include/ruby/st.h (size_t): needs stddef.h or stdlib.h.
[ruby-core:20339]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-11 02:11:09 +00:00
akr
4c6321a1f7 add a comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 09:06:04 +00:00
shyouhei
6f88631baa * include/ruby/st.h (struct st_table): type of bit-field
'num_entries' is a GCC extension


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 07:59:21 +00:00
akr
041e829127 * include/ruby/encoding.h (rb_isascii): defined.
(rb_isalnum): ditto.
  (rb_isalpha): ditto.
  (rb_isblank): ditto.
  (rb_iscntrl): ditto.
  (rb_isdigit): ditto.
  (rb_isgraph): ditto.
  (rb_islower): ditto.
  (rb_isprint): ditto.
  (rb_ispunct): ditto.
  (rb_isspace): ditto.
  (rb_isupper): ditto.
  (rb_isxdigit): ditto.
  (rb_tolower): ditto.
  (rb_toupper): ditto.

* include/ruby/st.h (st_strcasecmp): declared.
  (st_strncasecmp): ditto.

* st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
  (st_strcasecmp): defined.
  (st_strncasecmp): ditto.

* include/ruby/ruby.h: include include/ruby/encoding.h.
  (ISASCII): use rb_isascii.
  (ISPRINT): use rb_isprint.
  (ISSPACE): use rb_isspace.
  (ISUPPER): use rb_isupper.
  (ISLOWER): use rb_islower.
  (ISALNUM): use rb_isalnum.
  (ISALPHA): use rb_isalpha.
  (ISDIGIT): use rb_isdigit.
  (ISXDIGIT): use rb_isxdigit.
  (TOUPPER): defined.
  (TOLOWER): ditto.
  (STRCASECMP): ditto.
  (STRNCASECMP): ditto.

* dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
  transcode.c, ext/readline/readline.c: use locale insensitive
  functions.  [ruby-core:14662]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-01 12:24:04 +00:00
nobu
efed292c43 * load.c (rb_feature_p): returns loading path name too.
* load.c (search_required): returns path too if feature is being
  loaded.  [ruby-dev:32048]  [TODO: refactoring]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 08:06:16 +00:00
nobu
c351afc372 * encoding.c (rb_enc_alias): allow encodings multiple aliases.
* encoding.c (rb_enc_find_index): search the encoding which has the
  given name and return its index if found, or -1.

* st.c (type_strcasehash): case-insensitive string hash type.

* string.c (rb_str_force_encoding): force encoding of self.  this name
  comes from [ruby-dev:31894] by Martin Duerst.  [ruby-dev:31744]

* include/ruby/encoding.h (rb_enc_find_index, rb_enc_associate_index):
  prototyped.

* include/ruby/encoding.h (rb_enc_isctype): direct interface to ctype.

* include/ruby/st.h (st_init_strcasetable): prototyped.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28 19:27:10 +00:00
akr
15c8e4618b * include/ruby/st.h (struct st_table): make num_entries bitfield
instead of num_bins for speed.  num_entries has less access.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-02 14:40:47 +00:00
nobu
ec2beed3b2 * include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
is larger than int.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-01 05:24:25 +00:00
nobu
d4cbf95002 * st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
the former may be larger than the latter.

* include/ruby/st.h (CHAR_BIT): get rid of magic number.

* include/ruby/st.h (struct st_table): num_entries never exceed
  num_bins.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-01 02:14:40 +00:00
akr
167358d000 * include/ruby/st.h (struct st_table): add entries_packed 1-bit
bitfield.  decrease num_bins 1-bit.

* st.c: pack numhash which have 5 or less entries in bins.
  (st_init_table_with_size): setup entries_packed flag.
  (st_clear): support packed mode.
  (st_lookup): ditto.
  (st_insert): ditto.
  (st_add_direct): ditto.
  (st_copy): ditto.
  (st_delete): ditto.
  (st_foreach): ditto.
  (st_reverse_foreach): ditto.
  (unpack_entries): new function for converting to unpacked mode.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-29 02:36:54 +00:00
nobu
be4fc7941b * st.c (struct st_table_entry): add new members, fore and back, to
iterate in inserted order.

* include/ruby/st.h (struct st_table): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-21 04:43:51 +00:00
nobu
ba563e4a41 * include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
constified.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-05 01:06:49 +00:00
nobu
2b592580bf * include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
Renamed from st.h (Browse further)