ruby-trunk-changes r61805 - r61814

今日は標準添付ライブラリ net/http の最適化や、構造体末尾に配列を置く手法のリファクタリングなどがありました。

mame: r61805 2018-01-13 21:09:24 +0900

r61804 で internal.h に定義した可変のつもりの配列サイズの指定を定数化した FLEX_ARY_LEN を node.c の node_buffer_elem_t でも利用するようにしています。

mame: r61806 2018-01-13 21:17:42 +0900

r61804 の FLEX_ARY_LEN を variable.c の struct gen_ivtbl でも利用するようにしています。

mame: r61807 2018-01-13 21:25:15 +0900

r61804 の FLEX_ARY_LEN を file.c の struct apply_arg でも利用するようにしています。

mame: r61808 2018-01-13 21:44:17 +0900

r61804 の FLEX_ARY_LEN を iseq.h の struct iseq_cache_table と struct iseq_compile_data_storage でも利用するようにしています。

mame: r61809 2018-01-13 22:00:11 +0900

compile.c の struct ibf_id_entry という構造体定義を削除しています。未使用になっていた模様。

mame: r61810 2018-01-13 22:00:14 +0900

r61804 の FLEX_ARY_LEN を compile.c の struct ibf_object_string, struct ibf_object_array, struct ibf_object_hash, struct ibf_object_bignum などでも利用するようにしています。

mame: r61811 2018-01-13 22:08:05 +0900

r61804 の FLEX_ARY_LEN を sting.c の struct mapping_buffer でも利用するようにしています。

normal: r61812 2018-01-14 11:44:53 +0900

標準添付ライブラリ net/http で Net::HTTPGenericRequest#send_request_with_body_stream の socket への書き込みを write メソッドを複数回呼び出すのを、write に複数の引数を渡せるようになった機能を使うように最適化しています。 [ruby-core:84845] [Feature #14339]

svn: r61813 2018-01-14 11:44:54 +0900

version.h の日付更新。

nobu: r61814 2018-01-14 20:19:18 +0900

r61804 から r61811 あたりの構造体末尾に配列を宣言して可変長のメモリ領域を利用する手法で、FLEX_ARY_LEN が 1 だと余計なメモリを確保するようになってたのを、offsetof() マクロを使ってちょうどのメモリを確保するようにしています。