Merge branch 'tamuratak-fix_typo_ruby_unordered_map'
* tamuratak-fix_typo_ruby_unordered_map: [ruby] add a test to make sure that std::multiset is including Enumerable. [ruyb] enable std::list test for Ruby. [ruby] make std::list include Enumerable. [ruby] make std::multiset and std::unordered_multiset include Enumerable. tests added. [ruby] make std::unordered_map include Enumerable.
This commit is contained in:
commit
382b3f0f8c
7 changed files with 32 additions and 3 deletions
|
|
@ -14,6 +14,7 @@ CPP_TEST_CASES = \
|
|||
li_cstring \
|
||||
li_factory \
|
||||
li_std_functors \
|
||||
li_std_list \
|
||||
li_std_multimap \
|
||||
li_std_pair_lang_object \
|
||||
li_std_queue \
|
||||
|
|
|
|||
|
|
@ -5,6 +5,9 @@ require 'cpp11_hash_tables'
|
|||
Cpp11_hash_tables::MultiMapIntInt.new({1=>7}),
|
||||
Cpp11_hash_tables::UnorderedMapIntInt.new({1=>7}),
|
||||
Cpp11_hash_tables::UnorderedMultiMapIntInt.new({1=>7})].each{|x|
|
||||
|
||||
swig_assert_equal("x.find_all{|e,k| e == 1}", "[[1,7]]", binding)
|
||||
|
||||
swig_assert_equal("x[1]", "7", binding)
|
||||
swig_assert_equal("x[2]", "nil", binding)
|
||||
x[2] = 9
|
||||
|
|
@ -27,6 +30,9 @@ require 'cpp11_hash_tables'
|
|||
Cpp11_hash_tables::MultiSetInt.new([1]),
|
||||
Cpp11_hash_tables::UnorderedSetInt.new([1]),
|
||||
Cpp11_hash_tables::UnorderedMultiSetInt.new([1])].each{|x|
|
||||
|
||||
swig_assert_equal("x.find_all{|e| e == 1}", "[1]", binding)
|
||||
|
||||
swig_assert_equal("x.include?(1)", "true", binding)
|
||||
swig_assert_equal("x.include?(2)", "false", binding)
|
||||
x << 2
|
||||
|
|
@ -42,3 +48,14 @@ require 'cpp11_hash_tables'
|
|||
x << 1
|
||||
swig_assert_equal("x.count(1)", "2", binding)
|
||||
}
|
||||
|
||||
[Cpp11_hash_tables::MapIntInt,
|
||||
Cpp11_hash_tables::MultiMapIntInt,
|
||||
Cpp11_hash_tables::UnorderedMapIntInt,
|
||||
Cpp11_hash_tables::UnorderedMultiMapIntInt,
|
||||
Cpp11_hash_tables::SetInt,
|
||||
Cpp11_hash_tables::MultiSetInt,
|
||||
Cpp11_hash_tables::UnorderedSetInt,
|
||||
Cpp11_hash_tables::UnorderedMultiSetInt].each{|k|
|
||||
swig_assert("k.include?(Enumerable)", binding)
|
||||
}
|
||||
|
|
|
|||
8
Examples/test-suite/ruby/li_std_list_runme.rb
Normal file
8
Examples/test-suite/ruby/li_std_list_runme.rb
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
require 'swig_assert'
|
||||
|
||||
require 'li_std_list'
|
||||
|
||||
include Li_std_list
|
||||
|
||||
x = DoubleList.new([1,2,3])
|
||||
swig_assert_equal("[1.0]", "x.find_all{|e| e == 1 }", binding)
|
||||
|
|
@ -27,6 +27,7 @@
|
|||
#define %swig_list_methods(Type...) %swig_sequence_methods(Type)
|
||||
#define %swig_list_methods_val(Type...) %swig_sequence_methods_val(Type);
|
||||
|
||||
%mixin std::list "Enumerable";
|
||||
|
||||
%rename("delete") std::list::__delete__;
|
||||
%rename("reject!") std::list::reject_bang;
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
#define %swig_multiset_methods(Set...) %swig_set_methods(Set)
|
||||
|
||||
|
||||
%mixin std::multiset "Enumerable";
|
||||
|
||||
%rename("delete") std::multiset::__delete__;
|
||||
%rename("reject!") std::multiset::reject_bang;
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@
|
|||
%rename("include?") std::unordered_map::__contains__ const;
|
||||
%rename("has_key?") std::unordered_map::has_key const;
|
||||
|
||||
%mixin std::map "Enumerable";
|
||||
%alias std::unordered_map::push "<<";
|
||||
%mixin std::unordered_map "Enumerable";
|
||||
%alias std::unordered_map::push "<<";
|
||||
|
||||
%include <std/std_unordered_map.i>
|
||||
|
|
|
|||
|
|
@ -36,6 +36,8 @@
|
|||
|
||||
#define %swig_unordered_multiset_methods(Set...) %swig_unordered_set_methods(Set)
|
||||
|
||||
%mixin std::unordered_multiset "Enumerable";
|
||||
|
||||
%rename("delete") std::unordered_multiset::__delete__;
|
||||
%rename("reject!") std::unordered_multiset::reject_bang;
|
||||
%rename("map!") std::unordered_multiset::map_bang;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue