You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
(8) |
May
(109) |
Jun
(68) |
Jul
(83) |
Aug
(126) |
Sep
(117) |
Oct
(490) |
Nov
(410) |
Dec
(182) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(15) |
Feb
(135) |
Mar
(155) |
Apr
(99) |
May
(92) |
Jun
(144) |
Jul
(51) |
Aug
(96) |
Sep
(223) |
Oct
(367) |
Nov
(346) |
Dec
(421) |
2006 |
Jan
(827) |
Feb
(404) |
Mar
(213) |
Apr
(44) |
May
(106) |
Jun
(79) |
Jul
(88) |
Aug
(43) |
Sep
(191) |
Oct
(164) |
Nov
(150) |
Dec
(36) |
2007 |
Jan
(17) |
Feb
(5) |
Mar
(17) |
Apr
(65) |
May
(114) |
Jun
(16) |
Jul
(22) |
Aug
(57) |
Sep
(44) |
Oct
(126) |
Nov
(97) |
Dec
(23) |
2008 |
Jan
(32) |
Feb
(59) |
Mar
(45) |
Apr
(80) |
May
(113) |
Jun
(116) |
Jul
(109) |
Aug
(77) |
Sep
(80) |
Oct
(10) |
Nov
(65) |
Dec
(68) |
2009 |
Jan
(77) |
Feb
(37) |
Mar
(46) |
Apr
(35) |
May
(52) |
Jun
(93) |
Jul
(150) |
Aug
(188) |
Sep
(21) |
Oct
(20) |
Nov
(46) |
Dec
(40) |
2010 |
Jan
(33) |
Feb
(56) |
Mar
(67) |
Apr
(48) |
May
(65) |
Jun
(83) |
Jul
(32) |
Aug
(10) |
Sep
(37) |
Oct
(53) |
Nov
(34) |
Dec
(39) |
2011 |
Jan
(59) |
Feb
(93) |
Mar
(72) |
Apr
(65) |
May
(79) |
Jun
(25) |
Jul
(16) |
Aug
(28) |
Sep
(22) |
Oct
(12) |
Nov
(23) |
Dec
(36) |
2012 |
Jan
(15) |
Feb
(10) |
Mar
(49) |
Apr
(66) |
May
(108) |
Jun
(74) |
Jul
(268) |
Aug
(252) |
Sep
(121) |
Oct
(24) |
Nov
(66) |
Dec
(38) |
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
(15) |
Dec
(48) |
2014 |
Jan
(18) |
Feb
(53) |
Mar
(81) |
Apr
(66) |
May
(70) |
Jun
(61) |
Jul
(38) |
Aug
(20) |
Sep
(49) |
Oct
(42) |
Nov
(13) |
Dec
(27) |
2015 |
Jan
(59) |
Feb
(27) |
Mar
(37) |
Apr
(20) |
May
(29) |
Jun
(17) |
Jul
(31) |
Aug
(27) |
Sep
(12) |
Oct
(12) |
Nov
(4) |
Dec
(24) |
2016 |
Jan
(14) |
Feb
(16) |
Mar
(38) |
Apr
(13) |
May
(30) |
Jun
(22) |
Jul
(6) |
Aug
(15) |
Sep
(23) |
Oct
(14) |
Nov
(19) |
Dec
(45) |
2017 |
Jan
(32) |
Feb
(14) |
Mar
(14) |
Apr
(8) |
May
(18) |
Jun
(21) |
Jul
(8) |
Aug
(17) |
Sep
(21) |
Oct
(22) |
Nov
(7) |
Dec
(5) |
2018 |
Jan
(15) |
Feb
(4) |
Mar
(7) |
Apr
(11) |
May
(16) |
Jun
(19) |
Jul
(4) |
Aug
(13) |
Sep
(12) |
Oct
(14) |
Nov
(11) |
Dec
(18) |
2019 |
Jan
(25) |
Feb
(38) |
Mar
(12) |
Apr
(20) |
May
(9) |
Jun
(5) |
Jul
(12) |
Aug
(14) |
Sep
|
Oct
(3) |
Nov
(2) |
Dec
(7) |
2020 |
Jan
(18) |
Feb
(5) |
Mar
(1) |
Apr
|
May
(9) |
Jun
(15) |
Jul
(1) |
Aug
(7) |
Sep
(7) |
Oct
(8) |
Nov
|
Dec
|
2021 |
Jan
(1) |
Feb
(8) |
Mar
(45) |
Apr
(53) |
May
(18) |
Jun
(1) |
Jul
(1) |
Aug
(1) |
Sep
(5) |
Oct
(9) |
Nov
(11) |
Dec
(48) |
2022 |
Jan
(63) |
Feb
(63) |
Mar
(64) |
Apr
(15) |
May
(13) |
Jun
(18) |
Jul
(39) |
Aug
(17) |
Sep
(31) |
Oct
(48) |
Nov
(23) |
Dec
(10) |
2023 |
Jan
(5) |
Feb
(4) |
Mar
(8) |
Apr
(48) |
May
(58) |
Jun
(33) |
Jul
(22) |
Aug
(14) |
Sep
(21) |
Oct
(14) |
Nov
(30) |
Dec
(46) |
2024 |
Jan
(17) |
Feb
(56) |
Mar
(15) |
Apr
(7) |
May
(6) |
Jun
(19) |
Jul
(27) |
Aug
(24) |
Sep
(64) |
Oct
|
Nov
|
Dec
|
From: Marcelo M. <mar...@us...> - 2004-12-21 08:43:23
|
Update of /cvsroot/swig/SWIG/Examples/python/weave In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2496 Modified Files: .cvsignore Log Message: Index: .cvsignore =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/python/weave/.cvsignore,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** .cvsignore 22 Nov 2004 17:19:13 -0000 1.1 --- .cvsignore 21 Dec 2004 08:43:14 -0000 1.2 *************** *** 1 **** --- 1,2 ---- example.py example_wrap.cxx example_wrap.h + example.pyc |
From: Marcelo M. <mar...@us...> - 2004-12-21 08:26:11
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31431 Modified Files: .cvsignore Log Message: .cvsignore Index: .cvsignore =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/.cvsignore,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** .cvsignore 6 Dec 2004 07:11:04 -0000 1.9 --- .cvsignore 21 Dec 2004 08:26:01 -0000 1.10 *************** *** 1,76 **** *wrap* *.pyc *.so *.dll *.exp *.lib Makefile abstract_access.py - abstract_access_runme.py - abstract_inherit_ok.py abstract_inherit.py abstract_signature.py - abstract_typedef2.py - abstract_typedef2_runme.py abstract_typedef.py ! abstract_typedef_runme.py abstract_virtual.py - abstract_virtual_runme.py add_link.py aggregate.py anonymous_bitfield.py - argcargvtest.py - argcargvtest_runme.py argout.py array_member.py ! array_member_runme.py arrayref.py arrays_dimensionless.py arrays_global.py - arrays_global_runme.py arrays_global_twodim.py - arrays.py arrays_scope.py - array_typedef_memberin.py - attributetest.py - attributetest_runme.py - autodoc.py bloody_hell.py bools.py - callback.py - callback_runme.py - cast_operator.py casts.py ! char_constant.py char_strings.py class_ignore.py - class_ignore_runme.py class_scope_weird.py - class_scope_weird_runme.py - clientdata_prop_a.py - clientdata_prop_b.py - clientdata_prop.py - complextest.py - complextest_runme.py - constant_pointers.py const_const_2.py ! const_const.py constover.py - constover_runme.py constructor_exception.py constructor_explicit.py constructor_value.py contract.py ! contract_runme.py conversion_namespace.py conversion_ns_template.py - conversion.py cplusplus_throw.py cpp_enum.py - cpp_enum_runme.py cpp_namespace.py - cpp_namespace_runme.py cpp_nodefault.py cpp_static.py cpp_typedef.py - default_args.py - default_args_runme.py default_constructor.py ! default_constructor_runme.py defvalue_constructor.py derived_byvalue.py --- 1,68 ---- *wrap* *.pyc *.so *.dll *.exp *.lib Makefile + argcargvtest.py + attributetest.py + autodoc.py + callback.py + complextest.py + director_stl.py + file_test.py + implicittest.py + inout.py + input.py + inplaceadd.py + kwargs.py + li_std_except.py + li_std_vectora.py + li_std_map.py + li_std_stream.py + li_std_wstring.py + nondynamic.py + primitive_types.py + std_containers.py + swigobject.py abstract_access.py abstract_inherit.py + abstract_inherit_ok.py abstract_signature.py abstract_typedef.py ! abstract_typedef2.py abstract_virtual.py add_link.py aggregate.py anonymous_bitfield.py argout.py array_member.py ! array_typedef_memberin.py arrayref.py arrays_dimensionless.py arrays_global.py arrays_global_twodim.py arrays_scope.py bloody_hell.py bools.py casts.py ! cast_operator.py char_strings.py class_ignore.py class_scope_weird.py const_const_2.py ! constant_pointers.py constover.py constructor_exception.py constructor_explicit.py constructor_value.py contract.py ! conversion.py conversion_namespace.py conversion_ns_template.py cplusplus_throw.py cpp_enum.py cpp_namespace.py cpp_nodefault.py cpp_static.py cpp_typedef.py default_constructor.py ! default_args.py defvalue_constructor.py derived_byvalue.py *************** *** 78,194 **** destructor_reprotected.py director_abstract.py - director_abstract_runme.py director_basic.py ! director_basic_runme.py ! director_default.py ! director_default_runme.py director_detect.py ! director_detect_runme.py director_enum.py - director_enum_runme.py director_exception.py - director_exception_runme.py - director_finalizer.py - director_finalizer_runme.py director_frob.py ! director_frob_runme.py director_nested.py - director_nested_runme.py director_protected.py - director_protected_runme.py director_redefined.py ! director_stl.py ! director_stl_runme.py director_unroll.py - director_unroll_runme.py director_wombat.py dynamic_cast.py - dynamic_cast_runme.py enum_plus.py enum_scope_template.py - enums.py - enums_runme.py enum_template.py - enum_template_runme.py enum_thorough.py enum_var.py evil_diamond_ns.py evil_diamond_prop.py - evil_diamond.py exception_order.py - exception_order_runme.py extend_default.py extend_placement.py - extend_placement_runme.py - extend_template_ns.py - extend_template_ns_runme.py extend_template.py ! extend_template_runme.py extern_throws.py features.py - file_test.py - file_test_runme.py friends.py - friends_runme.py - function_typedef.py global_ns_arg.py grouping.py - grouping_runme.py ignore_parameter.py - implicittest.py - implicittest_runme.py import_nomodule.py - import_nomodule_runme.py - imports_a.py - imports_b.py - imports.py - imports_runme.py - inctest.py - inctest_runme.py inherit_missing.py - inherit_missing_runme.py - inherit_void_arg.py inline_initializer.py ! inout.py ! inout_runme.py ! inplaceadd.py ! inplaceadd_runme.py kind.py - kwargs.py - kwargs_runme.py - lextype.py li_carrays.py li_cdata.py - li_cmalloc.py - li_constraints.py li_cpointer.py - li_math.py li_std_deque.py - li_std_except.py - li_std_map.py - li_std_map_runme.py li_std_pair.py - li_std_pair_runme.py li_std_string.py - li_std_string_runme.py - li_std_vectora.py li_std_vector.py - li_std_vector_runme.py - li_std_wstring.py - li_std_wstring_runme.py li_typemaps.py long_long_apply.py - long_long.py member_template.py minherit.py - minherit_runme.py mixed_types.py multiple_inheritance.py name_cxx.py ! name_inherit.py ! name.py ! name_runme.py namespace_class.py - namespace_class_runme.py namespace_enum.py namespace_extend.py --- 70,129 ---- destructor_reprotected.py director_abstract.py director_basic.py ! director_constructor.py director_detect.py ! director_default.py director_enum.py director_exception.py director_frob.py ! director_finalizer.py director_nested.py director_protected.py director_redefined.py ! director_string.py director_unroll.py director_wombat.py dynamic_cast.py enum_plus.py enum_scope_template.py enum_template.py enum_thorough.py enum_var.py + evil_diamond.py evil_diamond_ns.py evil_diamond_prop.py exception_order.py extend_default.py extend_placement.py extend_template.py ! extend_template_ns.py extern_throws.py features.py friends.py global_ns_arg.py + global_vars.py grouping.py ignore_parameter.py import_nomodule.py inherit_missing.py inline_initializer.py ! inherit_void_arg.py kind.py li_carrays.py li_cdata.py li_cpointer.py li_std_deque.py li_std_pair.py li_std_string.py li_std_vector.py li_typemaps.py long_long_apply.py member_template.py minherit.py mixed_types.py multiple_inheritance.py name_cxx.py ! name_warnings.py namespace_class.py namespace_enum.py namespace_extend.py *************** *** 198,232 **** namespace_typedef_class.py namespace_typemap.py - namespace_typemap_runme.py namespace_virtual_method.py - namespace_virtual_method_runme.py - name_warnings.py - nested.py - nested_runme.py newobject1.py - newobject2.py - nondynamic.py - nondynamic_runme.py overload_copy.py - overload_copy_runme.py - overload_extendc.py - overload_extendc_runme.py overload_extend.py - overload_extend_runme.py overload_rename.py - overload_rename_runme.py overload_simple.py - overload_simple_runme.py overload_subtype.py - overload_subtype_runme.py overload_template.py - overload_template_runme.py pointer_reference.py - preproc.py - preproc_runme.py primitive_ref.py - primitive_ref_runme.py - primitive_types.py - primitive_types_runme.py private_assign.py protected_rename.py --- 133,146 ---- *************** *** 234,356 **** redefined.py reference_global_vars.py - reference_global_vars_runme.py register_par.py rename_scope.py - rename_scope_runme.py - ret_by_value.py - ret_by_value_runme.py return_const_value.py - return_const_value_runme.py return_value_scope.py rname.py - sizeof_pointer.py sizet.py - smart_pointer_const2.py smart_pointer_const.py smart_pointer_multi.py - smart_pointer_multi_runme.py smart_pointer_multi_typedef.py - smart_pointer_multi_typedef_runme.py - smart_pointer_namespace2.py smart_pointer_namespace.py smart_pointer_not.py - smart_pointer_not_runme.py smart_pointer_overload.py - smart_pointer_overload_runme.py smart_pointer_protected.py smart_pointer_rename.py - smart_pointer_rename_runme.py smart_pointer_simple.py - smart_pointer_simple_runme.py smart_pointer_static.py smart_pointer_typedef.py - smart_pointer_typedef_runme.py - sneaky1.py - sneaky1_runme.py static_array_member.py - static_const_member_2.py - static_const_member_2_runme.py static_const_member.py ! std_containers.py ! std_containers_runme.py ! struct_rename.py ! struct_rename_runme.py struct_value.py ! struct_value_runme.py template_arg_replace.py template_arg_scope.py template_arg_typename.py - template_array_numeric.py template_base_template.py template_classes.py template_const_ref.py template_construct.py ! template_construct_runme.py template_default2.py template_default_arg.py - template_default_arg_runme.py template_default_inherit.py - template_default.py template_default_qualify.py template_default_vw.py - template_enum_ns_inherit.py template_enum.py template_enum_typedef.py template_explicit.py ! template_expr.py template_extend1.py - template_extend1_runme.py template_extend2.py - template_extend2_runme.py - template_extend_overload_2.py - template_extend_overload.py template_forward.py - template_inherit_abstract.py template_inherit.py ! template_inherit_runme.py template_int_const.py template_ns2.py template_ns3.py template_ns4.py - template_ns4_runme.py - template_ns_enum2.py template_ns_enum.py template_ns_inherit.py - template_ns.py - template_ns_runme.py template_ns_scope.py template_opaque.py - template_opaque_runme.py template_partial_arg.py ! template.py template_qualifier.py template_ref_type.py - template_ref_type_runme.py template_rename.py - template_rename_runme.py template_retvalue.py ! template_runme.py template_specialization_defarg.py template_specialization_enum.py - template_specialization.py template_static.py template_tbase_template.py ! template_tbase_template_runme.py template_typedef_cplx2.py - template_typedef_cplx2_runme.py template_typedef_cplx3.py - template_typedef_cplx3_runme.py template_typedef_cplx4.py - template_typedef_cplx4_runme.py template_typedef_cplx5.py - template_typedef_cplx.py - template_typedef_cplx_runme.py - template_typedef_import.py - template_typedef_import_runme.py template_typedef_ptr.py - template_typedef.py - template_typedef_runme.py - template_type_namespace.py - template_type_namespace_runme.py template_virtual.py template_whitespace.py --- 148,231 ---- redefined.py reference_global_vars.py register_par.py rename_scope.py return_const_value.py return_value_scope.py rname.py sizet.py smart_pointer_const.py + smart_pointer_const2.py + smart_pointer_extend.py + smart_pointer_member.py smart_pointer_multi.py smart_pointer_multi_typedef.py smart_pointer_namespace.py + smart_pointer_namespace2.py smart_pointer_not.py smart_pointer_overload.py smart_pointer_protected.py smart_pointer_rename.py smart_pointer_simple.py smart_pointer_static.py smart_pointer_typedef.py static_array_member.py static_const_member.py ! static_const_member_2.py struct_value.py ! template.py ! template_array_numeric.py template_arg_replace.py template_arg_scope.py template_arg_typename.py template_base_template.py template_classes.py template_const_ref.py template_construct.py ! template_default.py template_default2.py template_default_arg.py template_default_inherit.py template_default_qualify.py template_default_vw.py template_enum.py + template_enum_ns_inherit.py template_enum_typedef.py template_explicit.py ! template_extend_overload.py ! template_extend_overload_2.py template_extend1.py template_extend2.py template_forward.py template_inherit.py ! template_inherit_abstract.py template_int_const.py + template_ns.py template_ns2.py template_ns3.py template_ns4.py template_ns_enum.py + template_ns_enum2.py template_ns_inherit.py template_ns_scope.py template_opaque.py template_partial_arg.py ! template_qualifier.py template_qualifier.py template_ref_type.py template_rename.py template_retvalue.py ! template_specialization.py template_specialization_defarg.py template_specialization_enum.py template_static.py template_tbase_template.py ! template_type_namespace.py ! template_typedef.py ! template_typedef_cplx.py template_typedef_cplx2.py template_typedef_cplx3.py template_typedef_cplx4.py template_typedef_cplx5.py template_typedef_ptr.py template_virtual.py template_whitespace.py *************** *** 358,412 **** typedef_array_member.py typedef_class.py - typedef_class_runme.py typedef_funcptr.py typedef_inherit.py - typedef_inherit_runme.py typedef_mptr.py typedef_reference.py typedef_scope.py - typedef_scope_runme.py typemap_namespace.py - typemap_namespace_runme.py typemap_ns_using.py - typemap_ns_using_runme.py typemap_numinputs.py - typemap_subst.py typename.py - typename_runme.py union_scope.py - unions.py - unions_runme.py using1.py - using1_runme.py using2.py - using2_runme.py using_composition.py - using_composition_runme.py using_extend.py - using_extend_runme.py using_inherit.py - using_inherit_runme.py using_namespace.py using_pointers.py using_private.py - using_private_runme.py using_protected.py ! using_protected_runme.py valuewrapper_base.py valuewrapper_const.py valuewrapper_opaque.py - valuewrapper.py varargs.py - varargs_runme.py virtual_destructor.py virtual_poly.py - virtual_poly_runme.py voidtest.py - voidtest_runme.py wrapmacro.py wrapmacro_runme.py ! li_std_stream.py ! swigobject.py ! smart_pointer_member.py ! cpp_broken.py namespace_union.py overload_complicated.py ! smart_pointer_extend.py --- 233,426 ---- typedef_array_member.py typedef_class.py typedef_funcptr.py typedef_inherit.py typedef_mptr.py typedef_reference.py typedef_scope.py typemap_namespace.py typemap_ns_using.py typemap_numinputs.py typename.py union_scope.py using1.py using2.py using_composition.py using_extend.py using_inherit.py using_namespace.py using_pointers.py using_private.py using_protected.py ! valuewrapper.py valuewrapper_base.py valuewrapper_const.py valuewrapper_opaque.py varargs.py virtual_destructor.py virtual_poly.py voidtest.py wrapmacro.py + file_test.py + nondynamic.py + arrays.py + char_constant.py + const_const.py + enums.py + function_typedef.py + inctest.py + lextype.py + li_carrays.py + li_cdata.py + li_cmalloc.py + li_constraints.py + li_cpointer.py + li_math.py + long_long.py + name.py + nested.py + newobject2.py + overload_extend.py + overload_extendc.py + preproc.py + ret_by_value.py + sizeof_pointer.py + sneaky1.py + struct_rename.py + typemap_subst.py + unions.py + argcargvtest_runme.py + attributetest_runme.py + callback_runme.py + complextest_runme.py + director_stl_runme.py + file_test_runme.py + implicittest_runme.py + inout_runme.py + input_runme.py + inplaceadd_runme.py + kwargs_runme.py + li_std_map_runme.py + li_std_stream_runme.py + li_std_wstring_runme.py + nondynamic_runme.py + primitive_types_runme.py + std_containers_runme.py + swigobject_runme.py + abstract_access_runme.py + abstract_typedef_runme.py + abstract_typedef2_runme.py + abstract_virtual_runme.py + array_member_runme.py + arrays_global_runme.py + class_ignore_runme.py + class_scope_weird_runme.py + constover_runme.py + contract_runme.py + cpp_enum_runme.py + cpp_namespace_runme.py + default_constructor_runme.py + default_args_runme.py + director_abstract_runme.py + director_basic_runme.py + director_detect_runme.py + director_default_runme.py + director_enum_runme.py + director_exception_runme.py + director_frob_runme.py + director_finalizer_runme.py + director_nested_runme.py + director_protected_runme.py + director_string_runme.py + director_unroll_runme.py + dynamic_cast_runme.py + enum_template_runme.py + exception_order_runme.py + extend_placement_runme.py + extend_template_runme.py + extend_template_ns_runme.py + friends_runme.py + global_vars_runme.py + grouping_runme.py + import_nomodule_runme.py + inherit_missing_runme.py + li_std_pair_runme.py + li_std_string_runme.py + li_std_vector_runme.py + minherit_runme.py + namespace_class_runme.py + namespace_typemap_runme.py + namespace_virtual_method_runme.py + overload_copy_runme.py + overload_extend_runme.py + overload_rename_runme.py + overload_simple_runme.py + overload_subtype_runme.py + overload_template_runme.py + primitive_ref_runme.py + reference_global_vars_runme.py + rename_scope_runme.py + return_const_value_runme.py + smart_pointer_extend_runme.py + smart_pointer_member_runme.py + smart_pointer_multi_runme.py + smart_pointer_multi_typedef_runme.py + smart_pointer_not_runme.py + smart_pointer_overload_runme.py + smart_pointer_rename_runme.py + smart_pointer_simple_runme.py + smart_pointer_typedef_runme.py + static_const_member_2_runme.py + struct_value_runme.py + template_runme.py + template_construct_runme.py + template_default_arg_runme.py + template_extend1_runme.py + template_extend2_runme.py + template_inherit_runme.py + template_ns_runme.py + template_ns4_runme.py + template_opaque_runme.py + template_ref_type_runme.py + template_rename_runme.py + template_tbase_template_runme.py + template_type_namespace_runme.py + template_typedef_runme.py + template_typedef_cplx_runme.py + template_typedef_cplx2_runme.py + template_typedef_cplx3_runme.py + template_typedef_cplx4_runme.py + typedef_class_runme.py + typedef_inherit_runme.py + typedef_scope_runme.py + typemap_namespace_runme.py + typemap_ns_using_runme.py + typename_runme.py + using1_runme.py + using2_runme.py + using_composition_runme.py + using_extend_runme.py + using_inherit_runme.py + using_private_runme.py + using_protected_runme.py + varargs_runme.py + virtual_poly_runme.py + voidtest_runme.py wrapmacro_runme.py ! file_test_runme.py ! nondynamic_runme.py ! enums_runme.py ! inctest_runme.py ! name_runme.py ! nested_runme.py ! overload_extend_runme.py ! overload_extendc_runme.py ! preproc_runme.py ! ret_by_value_runme.py ! sneaky1_runme.py ! struct_rename_runme.py ! unions_runme.py ! clientdata_prop_a.py ! clientdata_prop_b.py ! imports_a.py ! imports_b.py ! template_typedef_import.py |
From: Marcelo M. <mar...@us...> - 2004-12-21 08:04:14
|
Update of /cvsroot/swig/SWIG/Examples/perl5/class In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26349 Modified Files: example.h runme.pl Log Message: add test case for bug #1071279 Index: example.h =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/perl5/class/example.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** example.h 30 Nov 2002 21:58:42 -0000 1.2 --- example.h 21 Dec 2004 08:03:48 -0000 1.3 *************** *** 34,37 **** --- 34,45 ---- }; + typedef Square TSquare; + class CFoo + { + public: + static Square MakeSquare(void) {return Square(4.0);}; + static TSquare MakeTSquare(void) {return Square(4.0);}; + }; + Index: runme.pl =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/perl5/class/runme.pl,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** runme.pl 11 Jul 2004 21:13:13 -0000 1.2 --- runme.pl 21 Dec 2004 08:03:49 -0000 1.3 *************** *** 53,56 **** print $example::Shape::nshapes," shapes remain\n"; - print "Goodbye\n"; --- 53,60 ---- print $example::Shape::nshapes," shapes remain\n"; + $square = example::CFoo::MakeSquare(); + $tsquare = example::CFoo::MakeTSquare(); + print "Areas ", $square->area(), " ", $tsquare->area(),"\n"; + + print "Goodbye\n"; |
From: Marcelo M. <mar...@us...> - 2004-12-21 07:11:07
|
Update of /cvsroot/swig/SWIG/Examples/test-suite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17491 Modified Files: global_vars.i smart_pointer_member.i template_default.i Log Message: adding more cases Index: template_default.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/template_default.i,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** template_default.i 20 Dec 2004 21:23:10 -0000 1.4 --- template_default.i 21 Dec 2004 07:10:54 -0000 1.5 *************** *** 179,187 **** typedef CTemplate<CFoo> TBla; // OK typedef void (*TFunc1)(CFoo arg); // OK ! typedef void (*TFunc2)(CTemplate<CFoo> arg); // crashes SWIG ! typedef void (*TFunc3)(CTemplate<CFoo>* arg); // crashes SWIG ! int foo(TFunc1 a, TFunc2 b, TFunc3 c); } %} --- 179,204 ---- typedef CTemplate<CFoo> TBla; // OK typedef void (*TFunc1)(CFoo arg); // OK ! typedef void (*TFunc2)(CTemplate<CFoo> arg); // OK ! typedef void (*TFunc3)(CTemplate<CFoo>* arg); // OK int foo(TFunc1 a, TFunc2 b, TFunc3 c); } %} + + + %include std_vector.i + + %{ + #include <vector> + %} + + %inline %{ + void g(std::vector<double>* s = 0) {} + void q(double = 0) {} + %} + + + %constant void (*Bf)(std::vector<double> *p = 0) = g; + %constant void (*Cf)(double = 0) = q; + + Index: global_vars.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/global_vars.i,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** global_vars.i 19 Dec 2004 04:34:42 -0000 1.1 --- global_vars.i 21 Dec 2004 07:10:53 -0000 1.2 *************** *** 3,12 **** %inline %{ - struct A { int x; ! }; ! A a; --- 3,10 ---- %inline %{ struct A { int x; ! }; A a; *************** *** 17,22 **** int x; int *xp; void *vp; - %} --- 15,26 ---- int x; int *xp; + int& c = x; + void *vp; + enum Hello { Hi, Hola }; + + Hello h; + Hello *hp; + Hello &hr = h; %} Index: smart_pointer_member.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/smart_pointer_member.i,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** smart_pointer_member.i 16 Dec 2004 02:11:59 -0000 1.5 --- smart_pointer_member.i 21 Dec 2004 07:10:54 -0000 1.6 *************** *** 10,16 **** int y; static const int z; static int boo() { return 0;} - }; --- 10,17 ---- int y; static const int z; + static const int zz = 3; + static int zx; static int boo() { return 0;} }; *************** *** 50,52 **** --- 51,55 ---- %{ const int Foo::z = 3; + const int Foo::zz; + int Foo::zx; %} |
From: Marcelo M. <mar...@us...> - 2004-12-20 21:23:20
|
Update of /cvsroot/swig/SWIG/Examples/test-suite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28675/Examples/test-suite Modified Files: template_default.i Log Message: fix template_deftype to work with functions Index: template_default.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/template_default.i,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** template_default.i 16 Dec 2004 02:11:59 -0000 1.3 --- template_default.i 20 Dec 2004 21:23:10 -0000 1.4 *************** *** 163,164 **** --- 163,187 ---- %} + + + %inline %{ + + namespace hi + { + class CFoo + { + }; + + template<class T1, class T2 = T1> class CTemplate + { + }; + + typedef CTemplate<CFoo> TBla; // OK + typedef void (*TFunc1)(CFoo arg); // OK + typedef void (*TFunc2)(CTemplate<CFoo> arg); // crashes SWIG + typedef void (*TFunc3)(CTemplate<CFoo>* arg); // crashes SWIG + + + int foo(TFunc1 a, TFunc2 b, TFunc3 c); + } + %} |
From: Marcelo M. <mar...@us...> - 2004-12-20 21:16:34
|
Update of /cvsroot/swig/SWIG/Source/Swig In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26974/Source/Swig Modified Files: symbol.c Log Message: fix template_deftype to work with functions Index: symbol.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/symbol.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** symbol.c 16 Dec 2004 02:12:04 -0000 1.21 --- symbol.c 20 Dec 2004 21:16:13 -0000 1.22 *************** *** 1312,1320 **** pi = First(parms); while (pi.item) { ! Append(s,Swig_symbol_type_qualify(pi.item,st)); pi = Next(pi); if (pi.item) { Append(s,","); } } Append(s,")."); --- 1312,1322 ---- pi = First(parms); while (pi.item) { ! String *pf = Swig_symbol_type_qualify(pi.item,st); ! Append(s,pf); pi = Next(pi); if (pi.item) { Append(s,","); } + Delete(pf); } Append(s,")."); *************** *** 1581,1633 **** SwigType* Swig_symbol_template_deftype(const SwigType *type, Symtab *tscope) { ! String *result = 0; ! String *prefix = SwigType_prefix(type); ! String *base = SwigType_base(type); ! String *tprefix = SwigType_templateprefix(base); ! String *targs = SwigType_templateargs(base); ! String *tsuffix = SwigType_templatesuffix(base); ! ParmList *tparms = SwigType_function_parms(targs); ! Node *tempn = Swig_symbol_clookup_local(tprefix,tscope); ! /* Printf(stderr,"deftype type %s \n", type);*/ ! if (tempn) { ! ParmList *tnargs = Getattr(tempn,"templateparms"); ! Parm *p; ! Symtab *tsdecl = Getattr(tempn,"sym:symtab"); ! ! /* Printf(stderr,"deftype type %s %s %s %s\n", tprefix, targs, tsuffix);*/ ! Append(tprefix,"<("); ! Swig_symbol_template_defargs(tparms, tnargs,tscope,tsdecl); ! p = tparms; ! while (p) { ! SwigType *ptype = Getattr(p,"type"); ! SwigType *ttr = ptype ? ptype : Getattr(p,"value"); ! SwigType *ttf = Swig_symbol_type_qualify(ttr,tscope); ! SwigType *ttq = Swig_symbol_template_param_eval(ttf,tscope); ! SwigType *ttd = 0; ! if (SwigType_istemplate(ttq)) { ! ttd = Swig_symbol_template_deftype(ttq, tscope); ! ttq = ttd; ! } ! Append(tprefix,ttq); ! p = nextSibling(p); ! if (p) Putc(',',tprefix); ! Delete(ttr); ! Delete(ttf); ! Delete(ttd); } - Append(tprefix,")>"); - Append(tprefix,tsuffix); - Append(prefix,tprefix); - /* Printf(stderr,"deftype %s %s \n", type, tprefix); */ - result = Copy(prefix); - } else { - result = Copy(type); } ! Delete(prefix); ! Delete(base); ! Delete(tprefix); ! Delete(tsuffix); ! Delete(targs); ! Delete(tparms); return result; } --- 1583,1665 ---- SwigType* Swig_symbol_template_deftype(const SwigType *type, Symtab *tscope) { ! String *result = NewString(""); ! List *elements = SwigType_split(type); ! int len = Len(elements); ! int i; ! for (i = 0; i < len; i++) { ! String *e = Getitem(elements,i); ! if (SwigType_isfunction(e)) { ! Iterator pi; ! List *parms = SwigType_parmlist(e); ! String *s = NewString("f("); ! pi = First(parms); ! while (pi.item) { ! String *pf = SwigType_istemplate(e) ? ! Swig_symbol_template_deftype(pi.item,tscope) ! : Swig_symbol_type_qualify(pi.item,tscope); ! Append(s,pf); ! pi = Next(pi); ! if (pi.item) { ! Append(s,","); ! } ! Delete(pf); ! } ! Append(s,")."); ! Append(result,s); ! Delete(s); ! } else if (SwigType_istemplate(e)) { ! String *prefix = SwigType_prefix(e); ! String *base = SwigType_base(e); ! String *tprefix = SwigType_templateprefix(base); ! String *targs = SwigType_templateargs(base); ! String *tsuffix = SwigType_templatesuffix(base); ! ParmList *tparms = SwigType_function_parms(targs); ! Node *tempn = Swig_symbol_clookup_local(tprefix,tscope); ! /* Printf(stderr,"deftype type %s \n", e);*/ ! if (tempn) { ! ParmList *tnargs = Getattr(tempn,"templateparms"); ! Parm *p; ! Symtab *tsdecl = Getattr(tempn,"sym:symtab"); ! ! /* Printf(stderr,"deftype type %s %s %s %s\n", tprefix, targs, tsuffix);*/ ! Append(tprefix,"<("); ! Swig_symbol_template_defargs(tparms, tnargs,tscope,tsdecl); ! p = tparms; ! while (p) { ! SwigType *ptype = Getattr(p,"type"); ! SwigType *ttr = ptype ? ptype : Getattr(p,"value"); ! SwigType *ttf = Swig_symbol_type_qualify(ttr,tscope); ! SwigType *ttq = Swig_symbol_template_param_eval(ttf,tscope); ! SwigType *ttd = 0; ! if (SwigType_istemplate(ttq)) { ! ttd = Swig_symbol_template_deftype(ttq, tscope); ! ttq = ttd; ! } ! Append(tprefix,ttq); ! p = nextSibling(p); ! if (p) Putc(',',tprefix); ! Delete(ttr); ! Delete(ttf); ! Delete(ttd); ! } ! Append(tprefix,")>"); ! Append(tprefix,tsuffix); ! Append(prefix,tprefix); ! /* Printf(stderr,"deftype %s %s \n", type, tprefix); */ ! Append(result,prefix); ! } else { ! Append(result,e); ! } ! Delete(prefix); ! Delete(base); ! Delete(tprefix); ! Delete(tsuffix); ! Delete(targs); ! Delete(tparms); ! } else { ! Append(result,e); } } ! Delete(elements); return result; } |
From: Marcelo M. <mar...@us...> - 2004-12-20 10:20:06
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6631 Modified Files: input_runme.py Log Message: fix typecheck for INPUT* type Index: input_runme.py =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/input_runme.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** input_runme.py 19 Dec 2004 22:36:45 -0000 1.1 --- input_runme.py 20 Dec 2004 10:19:54 -0000 1.2 *************** *** 8,11 **** --- 8,14 ---- raise RuntimeError + if f.foo()!= None: + raise RuntimeError + if sfoo("Hello") != "Hello world": raise RuntimeError *************** *** 13,15 **** if sfoo(None) != None: raise RuntimeError ! --- 16,20 ---- if sfoo(None) != None: raise RuntimeError ! ! if sfoo() != None: ! raise RuntimeError |
From: Marcelo M. <mar...@us...> - 2004-12-20 10:17:17
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6046/Examples/test-suite/python Modified Files: input.i Log Message: fix typecheck for INPUT* type Index: input.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/input.i,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** input.i 19 Dec 2004 22:36:45 -0000 1.1 --- input.i 20 Dec 2004 10:16:56 -0000 1.2 *************** *** 3,9 **** %apply int *INPUT {int *bar}; ! %typemap(out) int * Foo::foo { if ($1) { ! $result = PyInt_FromLong(*$1); } else { Py_INCREF(Py_None); --- 3,9 ---- %apply int *INPUT {int *bar}; ! %typemap(out, fragment=SWIG_From_frag(int)) int * Foo::foo { if ($1) { ! $result = SWIG_From(int)(*$1); } else { Py_INCREF(Py_None); *************** *** 15,19 **** { struct Foo { ! int *foo(int *bar) { if (bar) { *bar *= 2; --- 15,19 ---- { struct Foo { ! int *foo(int *bar = 0) { if (bar) { *bar *= 2; *************** *** 24,41 **** } - - %include std_string.i %apply std::string *INPUT {std::string *bar}; - %typemap(out) int * sfoo { - if ($1) { - $result = PyInt_FromLong(*$1); - } else { - Py_INCREF(Py_None); - $result = Py_None; - } - } ! %typemap(out, fragment=SWIG_From_frag(std::string)) std::string * sfoo { if ($1) { $result = SWIG_From(std::string)(*$1); --- 24,31 ---- } %include std_string.i %apply std::string *INPUT {std::string *bar}; ! %typemap(out, fragment=SWIG_From_frag(std::string)) std::string *sfoo { if ($1) { $result = SWIG_From(std::string)(*$1); *************** *** 47,51 **** %inline %{ ! std::string *sfoo(std::string *bar) { if (bar) *bar += " world"; return (bar) ? bar : 0; --- 37,41 ---- %inline %{ ! std::string *sfoo(std::string *bar = 0) { if (bar) *bar += " world"; return (bar) ? bar : 0; |
From: Marcelo M. <mar...@us...> - 2004-12-20 09:51:20
|
Update of /cvsroot/swig/SWIG/Lib/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1291 Modified Files: pyinout.swg Log Message: fix typecheck for INPUT* type Index: pyinout.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyinout.swg,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** pyinout.swg 19 Dec 2004 22:36:44 -0000 1.7 --- pyinout.swg 20 Dec 2004 09:50:55 -0000 1.8 *************** *** 99,103 **** "if (res$argnum == SWIG_NEWOBJ) delete $1;"; %typemap(typecheck,precedence=code,fragment=asptr_frag) Type *INPUT, Type &INPUT ! "$1 = asptr_meth($input, (Type*)0) != 0;" %enddef --- 99,103 ---- "if (res$argnum == SWIG_NEWOBJ) delete $1;"; %typemap(typecheck,precedence=code,fragment=asptr_frag) Type *INPUT, Type &INPUT ! "$1 = asptr_meth($input, (Type**)0) != 0;" %enddef |
From: Marcelo M. <mar...@us...> - 2004-12-19 23:03:23
|
Update of /cvsroot/swig/SWIG/Source/Swig In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12182/Source/Swig Modified Files: typemap.c Log Message: fix typemap search, now you can add a typemap like %typemap(out) int *Foo::foo(int bar); Index: typemap.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/typemap.c,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** typemap.c 19 Dec 2004 22:54:40 -0000 1.44 --- typemap.c 19 Dec 2004 23:03:14 -0000 1.45 *************** *** 1191,1196 **** int *Foo::foo(int bar) -> Foo::foo - -> *::foo - -> Foo::* */ String *qname = NewStringf("%s::%s",qsn,pname); --- 1191,1194 ---- |
From: Marcelo M. <mar...@us...> - 2004-12-19 23:03:22
|
Update of /cvsroot/swig/SWIG In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12182 Modified Files: CHANGES.current Log Message: fix typemap search, now you can add a typemap like %typemap(out) int *Foo::foo(int bar); Index: CHANGES.current =================================================================== RCS file: /cvsroot/swig/SWIG/CHANGES.current,v retrieving revision 1.351 retrieving revision 1.352 diff -C2 -d -r1.351 -r1.352 *** CHANGES.current 16 Dec 2004 01:54:38 -0000 1.351 --- CHANGES.current 19 Dec 2004 23:03:12 -0000 1.352 *************** *** 1,4 **** --- 1,27 ---- Version 1.3.25 (In progress) ============================ + Dec/19: mmatus + - Fix typemap search, now the "out" typemap search is done as follows + + int *Foo::foo(int bar) -> int *Foo::foo(int bar) + -> int *Foo::foo + -> int *foo(int bar) + -> int *foo + -> int * + + then, now you can be more specific, and define + + /* apply only for 'Foo::foo' method */ + %typemap(out) int * Foo::foo(int *bar) ...; + + /* apply for all 'foo' functions/methods */ + %typemap(out) int * foo(int *bar) ...; + + %inline { + struct Foo { + int *foo(int *bar); + }; + } + Dec/15: mmatus |
From: Marcelo M. <mar...@us...> - 2004-12-19 22:54:50
|
Update of /cvsroot/swig/SWIG/Source/Swig In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10373/Source/Swig Modified Files: typemap.c Log Message: fix typemap search, now you can add a typemap like %typemap(out) int *Foo::foo(int bar); Index: typemap.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/typemap.c,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -d -r1.43 -r1.44 *** typemap.c 16 Dec 2004 02:12:04 -0000 1.43 --- typemap.c 19 Dec 2004 22:54:40 -0000 1.44 *************** *** 1165,1169 **** SwigType *mtype = 0; String *pname; ! Hash *tm; String *s = 0; String *sdef = 0; --- 1165,1169 ---- SwigType *mtype = 0; String *pname; ! Hash *tm = 0; String *s = 0; String *sdef = 0; *************** *** 1171,1178 **** ParmList *kw; char temp[256]; ! String *symname; String *cname = 0; String *clname = 0; ! /* special case, we need to check for 'ref' call and set the defaul code 'sdef' */ --- 1171,1178 ---- ParmList *kw; char temp[256]; ! String *symname, *qsn; String *cname = 0; String *clname = 0; ! Symtab *st; /* special case, we need to check for 'ref' call and set the defaul code 'sdef' */ *************** *** 1185,1189 **** pname = Getattr(node,"name"); ! tm = Swig_typemap_search(op,type,pname,&mtype); if (!tm) return sdef; --- 1185,1208 ---- pname = Getattr(node,"name"); ! st = Getattr(node,"sym:symtab"); ! qsn = st ? Swig_symbol_qualifiedscopename(st) : 0; ! if (qsn && Len(qsn)) { ! /* look qualified names first, such as ! ! int *Foo::foo(int bar) -> Foo::foo ! -> *::foo ! -> Foo::* ! */ ! String *qname = NewStringf("%s::%s",qsn,pname); ! tm = Swig_typemap_search(op,type,qname,&mtype); ! Delete(qname); ! } ! Delete(qsn); ! ! /* look now for simple name, such as ! ! int *Foo::foo(int bar) -> foo ! */ ! if (!tm) tm = Swig_typemap_search(op,type,pname,&mtype); if (!tm) return sdef; |
From: Marcelo M. <mar...@us...> - 2004-12-19 22:48:46
|
Update of /cvsroot/swig/SWIG/Lib/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9137/Lib/python Modified Files: pyptrtypes.swg Log Message: fix *INPUT typemaps for ptr types, now a null value is ok Index: pyptrtypes.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyptrtypes.swg,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** pyptrtypes.swg 16 Dec 2004 10:39:06 -0000 1.11 --- pyptrtypes.swg 19 Dec 2004 22:48:33 -0000 1.12 *************** *** 143,146 **** --- 143,147 ---- PYPTR_INPUT_TYPEMAP(SWIG_arg(CheckCode),SWIG_arg(AsPtrMeth), SWIG_arg(AsPtrFrag),Type); + PYVAL_OUTPUT_TYPEMAP(SWIG_arg(FromMeth), SWIG_arg(FromFrag), Type); PYPTR_INOUT_TYPEMAP(Type); %enddef |
From: Marcelo M. <mar...@us...> - 2004-12-19 22:36:56
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6125/Examples/test-suite/python Modified Files: Makefile.in Added Files: input.i input_runme.py Log Message: fix *INPUT typemaps for ptr types, now a null value is ok Index: Makefile.in =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/Makefile.in,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** Makefile.in 28 Nov 2004 22:34:48 -0000 1.20 --- Makefile.in 19 Dec 2004 22:36:45 -0000 1.21 *************** *** 21,24 **** --- 21,25 ---- implicittest \ inout \ + input \ inplaceadd \ kwargs \ --- NEW FILE: input.i --- %module input %apply int *INPUT {int *bar}; %typemap(out) int * Foo::foo { if ($1) { $result = PyInt_FromLong(*$1); } else { Py_INCREF(Py_None); $result = Py_None; } } %inline { struct Foo { int *foo(int *bar) { if (bar) { *bar *= 2; } return (bar) ? bar : 0; } }; } %include std_string.i %apply std::string *INPUT {std::string *bar}; %typemap(out) int * sfoo { if ($1) { $result = PyInt_FromLong(*$1); } else { Py_INCREF(Py_None); $result = Py_None; } } %typemap(out, fragment=SWIG_From_frag(std::string)) std::string * sfoo { if ($1) { $result = SWIG_From(std::string)(*$1); } else { Py_INCREF(Py_None); $result = Py_None; } } %inline %{ std::string *sfoo(std::string *bar) { if (bar) *bar += " world"; return (bar) ? bar : 0; } %} --- NEW FILE: input_runme.py --- from input import * f = Foo() if f.foo(2) != 4: raise RuntimeError if f.foo(None)!= None: raise RuntimeError if sfoo("Hello") != "Hello world": raise RuntimeError if sfoo(None) != None: raise RuntimeError |
From: Marcelo M. <mar...@us...> - 2004-12-19 22:36:56
|
Update of /cvsroot/swig/SWIG/Lib/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6125/Lib/python Modified Files: pyinout.swg Log Message: fix *INPUT typemaps for ptr types, now a null value is ok Index: pyinout.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyinout.swg,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** pyinout.swg 29 Oct 2004 22:25:18 -0000 1.6 --- pyinout.swg 19 Dec 2004 22:36:44 -0000 1.7 *************** *** 81,89 **** if (!res) { SWIG_type_error("$basetype", $input); ! } else { ! if (!$1) { ! SWIG_null_ref("$basetype"); ! } ! } if (SWIG_arg_fail($argnum)) SWIG_fail; } --- 81,85 ---- if (!res) { SWIG_type_error("$basetype", $input); ! } if (SWIG_arg_fail($argnum)) SWIG_fail; } |
From: Marcelo M. <mar...@us...> - 2004-12-19 04:34:51
|
Update of /cvsroot/swig/SWIG/Lib/perl5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19311/Lib/perl5 Modified Files: perl5.swg Log Message: fix varin typemap Index: perl5.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/perl5/perl5.swg,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** perl5.swg 29 Nov 2004 23:13:56 -0000 1.28 --- perl5.swg 19 Dec 2004 04:34:43 -0000 1.29 *************** *** 246,250 **** %typemap(varin) SWIGTYPE * { void *temp; ! if (SWIG_ConvertPtr($input, (void **) &$1, $1_descriptor,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $1_mangle"); } --- 246,250 ---- %typemap(varin) SWIGTYPE * { void *temp; ! if (SWIG_ConvertPtr($input, &temp, $1_descriptor,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $1_mangle"); } *************** *** 269,273 **** %typemap(varin) SWIGTYPE & { void *temp; ! if (SWIG_ConvertPtr($input, (void **) &temp, $1_descriptor,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $1_mangle"); } --- 269,273 ---- %typemap(varin) SWIGTYPE & { void *temp; ! if (SWIG_ConvertPtr($input, &temp, $1_descriptor,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $1_mangle"); } *************** *** 276,291 **** %typemap(varin) void * { ! if (SWIG_ConvertPtr($input, (void **) &$1, 0,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $1_mangle"); } } /* Object passed by value. Convert to a pointer */ %typemap(varin) SWIGTYPE { ! $&1_ltype argp; ! if (SWIG_ConvertPtr($input,(void **) &argp, $&1_descriptor,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $&1_mangle"); } ! $1 = *argp; } --- 276,293 ---- %typemap(varin) void * { ! void *temp; ! if (SWIG_ConvertPtr($input, &temp, 0,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $1_mangle"); } + $1 = temp; } /* Object passed by value. Convert to a pointer */ %typemap(varin) SWIGTYPE { ! $&1_ltype temp; ! if (SWIG_ConvertPtr($input,(void **) &temp, $&1_descriptor,0) < 0) { croak("Type error in argument $argnum of $symname. Expected $&1_mangle"); } ! $1 = *temp; } |
From: Marcelo M. <mar...@us...> - 2004-12-19 04:34:51
|
Update of /cvsroot/swig/SWIG/Examples/test-suite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19311/Examples/test-suite Modified Files: common.mk Added Files: global_vars.i Log Message: fix varin typemap Index: common.mk =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/common.mk,v retrieving revision 1.127 retrieving revision 1.128 diff -C2 -d -r1.127 -r1.128 *** common.mk 13 Dec 2004 20:22:16 -0000 1.127 --- common.mk 19 Dec 2004 04:34:42 -0000 1.128 *************** *** 141,144 **** --- 141,145 ---- friends \ global_ns_arg \ + global_vars \ grouping \ ignore_parameter \ --- NEW FILE: global_vars.i --- %module global_vars %inline %{ struct A { int x; }; A a; A *ap; const A *cap; A &ar = a; int x; int *xp; void *vp; %} |
From: Marcelo M. <mar...@us...> - 2004-12-18 05:57:18
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15277/Examples/test-suite/python Modified Files: kwargs.i Log Message: avoid using of temporal value for wrapping type user + const reference argument Index: kwargs.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/kwargs.i,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** kwargs.i 20 Oct 2004 21:05:25 -0000 1.2 --- kwargs.i 18 Dec 2004 05:57:08 -0000 1.3 *************** *** 53,54 **** --- 53,74 ---- %template(templatedfunction) templatedfunction<int>; + + // Deafult args with references + %inline + %{ + + typedef int size_type; + + struct Hello + { + static const size_type hello = 3; + }; + + + + int rfoo( const size_type& x = Hello::hello, const Hello& y = Hello() ) + { + return x; + } + + %} |
From: Marcelo M. <mar...@us...> - 2004-12-18 05:54:04
|
Update of /cvsroot/swig/SWIG/Source/Swig In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14867/Source/Swig Modified Files: cwrap.c Log Message: avoid using of temporal value for wrapping type user + const reference argument Index: cwrap.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/cwrap.c,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** cwrap.c 4 Dec 2004 08:33:02 -0000 1.51 --- cwrap.c 18 Dec 2004 05:53:53 -0000 1.52 *************** *** 174,186 **** if (pvalue) { SwigType *tvalue; ! String *defname, *defvalue, *rvalue; rvalue = SwigType_typedef_resolve_all(pvalue); defname = NewStringf("%s_defvalue", lname); tvalue = Copy(type); SwigType_del_reference(tvalue); ! defvalue = NewStringf("%s = %s", SwigType_lstr(tvalue,defname), rvalue); Wrapper_add_localv(w,defname, defvalue, NIL); Delete(tvalue); Delete(rvalue); Delete(defname); Delete(defvalue); --- 174,195 ---- if (pvalue) { SwigType *tvalue; ! String *defname, *defvalue, *rvalue, *qvalue; rvalue = SwigType_typedef_resolve_all(pvalue); + qvalue = SwigType_typedef_qualified(rvalue); defname = NewStringf("%s_defvalue", lname); tvalue = Copy(type); SwigType_del_reference(tvalue); ! tycode = SwigType_type(tvalue); ! if (tycode != T_USER) { ! /* plain primitive type, we copy the the def value */ ! defvalue = NewStringf("%s = %s", SwigType_lstr(tvalue,defname),qvalue); ! } else { ! /* user type, we copy the reference value */ ! defvalue = NewStringf("%s = %s",SwigType_str(type,defname),qvalue); ! } Wrapper_add_localv(w,defname, defvalue, NIL); Delete(tvalue); Delete(rvalue); + Delete(qvalue); Delete(defname); Delete(defvalue); |
From: Marcelo M. <mar...@us...> - 2004-12-16 10:40:13
|
Update of /cvsroot/swig/SWIG/Lib/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30560/Lib/python Modified Files: director_h.swg pyvaltypes.swg Log Message: solve possible seg. faults and directors #1080075 Index: pyvaltypes.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyvaltypes.swg,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** pyvaltypes.swg 16 Dec 2004 00:57:39 -0000 1.16 --- pyvaltypes.swg 16 Dec 2004 10:40:01 -0000 1.17 *************** *** 69,86 **** %define PYVAL_DIRECTOROUT_TYPEMAP(as_meth,pyfrag,Type...) ! %typemap(directorargout,fragment=pyfrag) Type *DIRECTOROUT { ! *$result = SWIG_static_cast(SWIG_arg(as_meth($input)),$type); ! if (PyErr_Occurred()) ! throw Swig::DirectorTypeMismatchException("Error converting Python object using as_meth"); } %typemap(directorout,fragment=pyfrag) Type { ! $result = SWIG_static_cast(SWIG_arg(as_meth($input)),$type); ! if (PyErr_Occurred()) throw Swig::DirectorTypeMismatchException("Error converting Python object using as_meth"); } %typemap(directorout,fragment=pyfrag,warning="470:Using thread/reentrant unsafe wrapping, consider using a plain '"#Type"' return type instead.") const Type& { ! static $basetype temp = SWIG_static_cast(SWIG_arg(as_meth($input)),$basetype); ! $result = &temp; ! if (PyErr_Occurred()) throw Swig::DirectorTypeMismatchException("Error converting Python object using as_meth"); } --- 69,88 ---- %define PYVAL_DIRECTOROUT_TYPEMAP(as_meth,pyfrag,Type...) ! %typemap(directorargout,fragment=pyfrag) Type *DIRECTOROUT { ! if ($input) *$result = SWIG_static_cast(SWIG_arg(as_meth($input)),$type); ! if (!$input || PyErr_Occurred()) ! throw Swig::DirectorTypeMismatchException("Error converting Python object using as_meth"); } %typemap(directorout,fragment=pyfrag) Type { ! if ($input) $result = SWIG_static_cast(SWIG_arg(as_meth($input)),$type); ! if (!$input || PyErr_Occurred()) throw Swig::DirectorTypeMismatchException("Error converting Python object using as_meth"); } %typemap(directorout,fragment=pyfrag,warning="470:Using thread/reentrant unsafe wrapping, consider using a plain '"#Type"' return type instead.") const Type& { ! if ($input) { ! static $basetype temp = SWIG_static_cast(SWIG_arg(as_meth($input)),$basetype); ! $result = &temp; ! } ! if (!$input || PyErr_Occurred()) throw Swig::DirectorTypeMismatchException("Error converting Python object using as_meth"); } Index: director_h.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/director_h.swg,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** director_h.swg 29 Oct 2004 07:30:02 -0000 1.1 --- director_h.swg 16 Dec 2004 10:40:01 -0000 1.2 *************** *** 42,48 **** public: DirectorTypeMismatchException(const char* msg="") { ! swig_msg = "Swig director type mismatch: "; ! swig_msg += msg; ! PyErr_SetString(PyExc_TypeError, getMessage()); } }; --- 42,50 ---- public: DirectorTypeMismatchException(const char* msg="") { ! if (!PyErr_Occurred()) { ! swig_msg = "Swig director type mismatch: "; ! swig_msg += msg; ! PyErr_SetString(PyExc_TypeError, getMessage()); ! } } }; |
From: Marcelo M. <mar...@us...> - 2004-12-16 10:39:16
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30383/Examples/test-suite/python Modified Files: director_exception_runme.py Log Message: solve possible seg. faults and directors #1080075 Index: director_exception_runme.py =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/director_exception_runme.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** director_exception_runme.py 29 May 2004 23:24:53 -0000 1.2 --- director_exception_runme.py 16 Dec 2004 10:39:06 -0000 1.3 *************** *** 8,11 **** --- 8,12 ---- class MyFoo2(Foo): def ping(self): + return true pass # error: should return a string *************** *** 32,39 **** try: b.pong() - except TypeError, e: - ok = 1 except: ! pass if not ok: --- 33,39 ---- try: b.pong() except: ! ok = 1 ! if not ok: |
From: Marcelo M. <mar...@us...> - 2004-12-16 10:39:15
|
Update of /cvsroot/swig/SWIG/Lib/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30383/Lib/python Modified Files: pyptrtypes.swg pystrbase.swg pyswigtype.swg pyvoid.swg Log Message: solve possible seg. faults and directors #1080075 Index: pyptrtypes.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyptrtypes.swg,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** pyptrtypes.swg 16 Dec 2004 00:57:39 -0000 1.10 --- pyptrtypes.swg 16 Dec 2004 10:39:06 -0000 1.11 *************** *** 63,67 **** %typemap(directorargout,fragment=pyfrag) Type *DIRECTOROUT ($*1_ltype temp) { Type *ptr = 0; ! int res = asptr_meth($input, &ptr); if (!res || !ptr) throw Swig::DirectorTypeMismatchException("Error converting Python object using asptr_meth"); --- 63,67 ---- %typemap(directorargout,fragment=pyfrag) Type *DIRECTOROUT ($*1_ltype temp) { Type *ptr = 0; ! int res = $input ? asptr_meth($input, &ptr) : 0; if (!res || !ptr) throw Swig::DirectorTypeMismatchException("Error converting Python object using asptr_meth"); *************** *** 72,76 **** %typemap(directorout,fragment=pyfrag) Type { Type *ptr = 0; ! int res = asptr_meth($input, &ptr); if (!res || !ptr) throw Swig::DirectorTypeMismatchException("Error converting Python object using asptr_meth"); --- 72,76 ---- %typemap(directorout,fragment=pyfrag) Type { Type *ptr = 0; ! int res = $input ? asptr_meth($input, &ptr) : 0; if (!res || !ptr) throw Swig::DirectorTypeMismatchException("Error converting Python object using asptr_meth"); *************** *** 80,84 **** %typemap(directorout,fragment=pyfrag,warning="470:Possible thread/reentrant unsafe wrapping, consider using a plain '"#Type"' return type instead.") const Type& { Type *ptr = 0; ! int res = asptr_meth($input, &ptr); if (!res || !ptr) throw Swig::DirectorTypeMismatchException("Error converting Python object using asptr_meth"); --- 80,84 ---- %typemap(directorout,fragment=pyfrag,warning="470:Possible thread/reentrant unsafe wrapping, consider using a plain '"#Type"' return type instead.") const Type& { Type *ptr = 0; ! int res = $input ? asptr_meth($input, &ptr) : 0; if (!res || !ptr) throw Swig::DirectorTypeMismatchException("Error converting Python object using asptr_meth"); Index: pyswigtype.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyswigtype.swg,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** pyswigtype.swg 21 Nov 2004 19:43:16 -0000 1.16 --- pyswigtype.swg 16 Dec 2004 10:39:06 -0000 1.17 *************** *** 287,291 **** %typemap(directorout) SWIGTYPE ($<ype argp) ! "if ((SWIG_ConvertPtr($input, (void **)(&argp), $&descriptor, SWIG_POINTER_EXCEPTION | $disown)) == -1) throw Swig::DirectorTypeMismatchException(\"Pointer conversion failed.\"); --- 287,291 ---- %typemap(directorout) SWIGTYPE ($<ype argp) ! "if (!$input || (SWIG_ConvertPtr($input, (void **)(&argp), $&descriptor, SWIG_POINTER_EXCEPTION | $disown)) == -1) throw Swig::DirectorTypeMismatchException(\"Pointer conversion failed.\"); *************** *** 293,297 **** %typemap(directorout) SWIGTYPE *, SWIGTYPE &, SWIGTYPE [] ! "if ((SWIG_ConvertPtr($input,(void **)(&$result), $descriptor,SWIG_POINTER_EXCEPTION | $disown )) == -1) throw Swig::DirectorTypeMismatchException(\"Pointer conversion failed.\");"; --- 293,297 ---- %typemap(directorout) SWIGTYPE *, SWIGTYPE &, SWIGTYPE [] ! "if (!$input || (SWIG_ConvertPtr($input,(void **)(&$result), $descriptor,SWIG_POINTER_EXCEPTION | $disown )) == -1) throw Swig::DirectorTypeMismatchException(\"Pointer conversion failed.\");"; Index: pyvoid.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pyvoid.swg,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** pyvoid.swg 1 Dec 2004 01:20:04 -0000 1.6 --- pyvoid.swg 16 Dec 2004 10:39:06 -0000 1.7 *************** *** 41,45 **** %typemap(directorout) void * { ! if ((SWIG_ConvertPtr($input,(void **)(&$result), 0, SWIG_POINTER_EXCEPTION | $disown )) == -1) throw Swig::DirectorTypeMismatchException("Pointer conversion failed."); --- 41,45 ---- %typemap(directorout) void * { ! if (!$input || (SWIG_ConvertPtr($input,(void **)(&$result), 0, SWIG_POINTER_EXCEPTION | $disown )) == -1) throw Swig::DirectorTypeMismatchException("Pointer conversion failed."); Index: pystrbase.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/python/pystrbase.swg,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** pystrbase.swg 18 Oct 2004 00:31:23 -0000 1.7 --- pystrbase.swg 16 Dec 2004 10:39:06 -0000 1.8 *************** *** 99,103 **** %typemap(directorout,fragment=#SWIG_AsCharPtr) Char *, Char const*, Char *const, Char const* const ! "if (!SWIG_AsCharPtr($input, (Char**) &$result)) { Swig::DirectorTypeMismatchException(\"Error converting Python object into Char*\"); }"; --- 99,103 ---- %typemap(directorout,fragment=#SWIG_AsCharPtr) Char *, Char const*, Char *const, Char const* const ! "if (!$input || !SWIG_AsCharPtr($input, (Char**) &$result)) { Swig::DirectorTypeMismatchException(\"Error converting Python object into Char*\"); }"; *************** *** 107,111 **** { Char* temp; ! if (!SWIG_AsCharPtr($input, &temp)) { Swig::DirectorTypeMismatchException("Error converting Python object into Char*"); } --- 107,111 ---- { Char* temp; ! if (!$input || !SWIG_AsCharPtr($input, &temp)) { Swig::DirectorTypeMismatchException("Error converting Python object into Char*"); } *************** *** 240,244 **** Char [ANY], const Char [ANY] (Char temp[$result_dim0]) { ! if (!SWIG_AsCharArray($input, temp, $result_dim0)) { Swig::DirectorTypeMismatchException("Error converting Python object into Char[$result_dim0]"); } --- 240,244 ---- Char [ANY], const Char [ANY] (Char temp[$result_dim0]) { ! if (!$input || !SWIG_AsCharArray($input, temp, $result_dim0)) { Swig::DirectorTypeMismatchException("Error converting Python object into Char[$result_dim0]"); } |
From: Marcelo M. <mar...@us...> - 2004-12-16 02:12:49
|
Update of /cvsroot/swig/SWIG/Examples/test-suite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4062/Examples/test-suite Modified Files: director_enum.i primitive_types.i smart_pointer_member.i template_default.i Log Message: fixes for templates and template default args, cosmetics, and other fixes for OSS Index: template_default.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/template_default.i,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** template_default.i 30 Nov 2002 22:00:06 -0000 1.2 --- template_default.i 16 Dec 2004 02:11:59 -0000 1.3 *************** *** 1,10 **** %module template_default %inline %{ ! template <class T1, class T2 = T1> ! class A ! { ! }; ! %} ! %template(A_ii) A<int, int>; ! %template(A_d) A<double>; --- 1,164 ---- %module template_default + + + + %warnfilter(801) ns1::Traits::c; /* Ruby, wrong constant name */ + namespace ns1 { + namespace ns2 { + + %feature("hello") A<int>; + %feature("hello") A<double,double>; + %feature("hi") A<int,int>; + %feature("hi") A<double>; + + %extend A<int> + { + int foo() { return 1; } + } + + %extend A<double,double> + { + int foo() { return 1; } + } + + %extend A<int,int> + { + int bar() { return 1; } + } + + %extend A<double> + { + int bar() { return 1; } + } + + %extend N<double> + { + int bar() { return 1; } + } + } + } + %inline %{ ! ! namespace ns1 { ! namespace ns2 { ! ! struct Parm ! { ! }; ! ! template <class T1, class T2 = T1> ! class A ! { ! ! #ifdef SWIG ! %typemap(in) A * { /* in A */ } ! %typemap(out) A * { /* out A */ } ! #endif ! }; ! typedef unsigned int category; ! ! const category one = 1; ! const category two = 1; ! ! ! template <class T1, category C = one, class T2 = Parm> ! class N ! { ! ! #ifdef SWIG ! %typemap(in) N * { /* in N */ } ! %typemap(out) N * { /* out N */ } ! #endif ! }; ! } ! } ! %} ! ! ! ! ! %template(A_p) ns1::ns2::A<double,ns1::ns2::Parm>; ! %template(N_1p) ns1::ns2::N<int>; ! ! ! namespace ns1 { ! namespace ns2 { ! %template(A_ii) A<int, int>; ! %template(A_d) A<double>; ! %template(N_d) N<double>; ! ! } ! } ! ! ! %inline %{ ! namespace ns1 { ! namespace ns2 { ! namespace ns3 { ! ! struct B : A<int> ! { ! }; ! ! struct C : N<double,ns1::ns2::one> ! { ! }; ! ! ! A<int> *get_a1(A<int> *a) { ! return a; ! } ! ! A<int,int> *get_a2(A<int,int> *a) { ! return a; ! } ! ! } ! } ! } ! %} ! ! %inline %{ ! namespace ns1 { ! struct Traits ! { ! static const ns2::category c = ns2::one; ! }; ! namespace ns4 { ! ! template <class T> ! struct D : ns2::N<double,T::c> ! { ! D() ! { ! } ! ! }; ! ! template <class T1, class T2 = D<T1> > ! struct Base : T2 ! { ! }; ! } ! } ! %} ! ! ! %template(Do) ns1::ns4::D<ns1::Traits>; ! %template(Bo) ns1::ns4::Base<ns1::Traits, ns1::ns4::D<ns1::Traits> >; ! ! ! ! %inline %{ ! namespace ns1 { ! namespace ns5 { ! ! struct Der : ns4::Base<Traits> ! { ! }; ! } ! } ! ! %} Index: primitive_types.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/primitive_types.i,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** primitive_types.i 11 Dec 2004 09:04:26 -0000 1.17 --- primitive_types.i 16 Dec 2004 02:11:59 -0000 1.18 *************** *** 2,5 **** --- 2,7 ---- %module(directors="1") primitive_types + // Using thread unsafe wrapping + #pragma SWIG nowarn=470 /* Index: director_enum.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/director_enum.i,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** director_enum.i 5 Dec 2004 10:22:56 -0000 1.11 --- director_enum.i 16 Dec 2004 02:11:59 -0000 1.12 *************** *** 33,40 **** virtual Hello say_hi(A *a){ return hi;} virtual Bye say_bye(Bye b){ return b;} ! virtual const Hello & say_hi_ref(const Hello & h){ return h;} Hello ping(Hello h){ return say_hi(h);} ! const Hello & ping_ref(const Hello &h){ return say_hi_ref(h);} Bye ping_member_enum(Bye b){ return say_bye(b);} --- 33,40 ---- virtual Hello say_hi(A *a){ return hi;} virtual Bye say_bye(Bye b){ return b;} ! virtual Hello say_hi_ref(const Hello & h){ return h;} Hello ping(Hello h){ return say_hi(h);} ! Hello ping_ref(const Hello &h){ return say_hi_ref(h);} Bye ping_member_enum(Bye b){ return say_bye(b);} Index: smart_pointer_member.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/smart_pointer_member.i,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** smart_pointer_member.i 7 Dec 2004 23:32:10 -0000 1.4 --- smart_pointer_member.i 16 Dec 2004 02:11:59 -0000 1.5 *************** *** 34,37 **** --- 34,38 ---- } }; + int get_y(Bar *b) |
From: Marcelo M. <mar...@us...> - 2004-12-16 02:12:48
|
Update of /cvsroot/swig/SWIG/Examples/test-suite/python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4062/Examples/test-suite/python Modified Files: li_std_stream.i Log Message: fixes for templates and template default args, cosmetics, and other fixes for OSS Index: li_std_stream.i =================================================================== RCS file: /cvsroot/swig/SWIG/Examples/test-suite/python/li_std_stream.i,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** li_std_stream.i 1 Dec 2004 01:17:56 -0000 1.2 --- li_std_stream.i 16 Dec 2004 02:11:59 -0000 1.3 *************** *** 49,54 **** %} ! %extend std::basic_ostream<char, std::char_traits<char> >{ ! std::basic_ostream<char, std::char_traits<char> >& operator<<(const A& a) { --- 49,54 ---- %} ! %extend std::basic_ostream<char>{ ! std::basic_ostream<char>& operator<<(const A& a) { |
From: Marcelo M. <mar...@us...> - 2004-12-16 02:12:43
|
Update of /cvsroot/swig/SWIG/Source/Modules In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4062/Source/Modules Modified Files: allocate.cxx lang.cxx tcl8.cxx Log Message: fixes for templates and template default args, cosmetics, and other fixes for OSS Index: allocate.cxx =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Modules/allocate.cxx,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** allocate.cxx 7 Dec 2004 23:32:11 -0000 1.36 --- allocate.cxx 16 Dec 2004 02:12:01 -0000 1.37 *************** *** 214,217 **** --- 214,218 ---- Node *nn = Getitem(abstract,i); String *name = Getattr(nn,"name"); + if (!name) continue; String *base_decl = Getattr(nn,"decl"); if (base_decl) base_decl = SwigType_typedef_resolve_all(base_decl); Index: lang.cxx =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Modules/lang.cxx,v retrieving revision 1.98 retrieving revision 1.99 diff -C2 -d -r1.98 -r1.99 *** lang.cxx 7 Dec 2004 23:32:11 -0000 1.98 --- lang.cxx 16 Dec 2004 02:12:02 -0000 1.99 *************** *** 92,97 **** char *tag = Char(nodeType(n)); if (!tag) { ! Printf(stderr,"SWIG: Fatal internal error. Malformed parse tree node!\n"); ! return SWIG_ERROR; } --- 92,98 ---- char *tag = Char(nodeType(n)); if (!tag) { ! /* Printf(stderr,"SWIG: Fatal internal error. Malformed parse tree ! node!\n"); */ ! return SWIG_OK; } Index: tcl8.cxx =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Modules/tcl8.cxx,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** tcl8.cxx 29 Oct 2004 22:28:00 -0000 1.15 --- tcl8.cxx 16 Dec 2004 02:12:02 -0000 1.16 *************** *** 669,673 **** virtual int classHandler(Node *n) { ! String *mangled_classname = 0; String *real_classname = 0; --- 669,673 ---- virtual int classHandler(Node *n) { ! static Hash* emitted = NewHash(); String *mangled_classname = 0; String *real_classname = 0; *************** *** 699,702 **** --- 699,705 ---- mangled_classname = Swig_name_mangle(real_classname); + if (Getattr(emitted,mangled_classname)) return SWIG_NOWRAP; + Setattr(emitted,mangled_classname,"1"); + attr_tab = NewString(""); Printf(attr_tab, "static swig_attribute swig_"); |