swig/Examples/test-suite/java
William S Fulton bd2de6fc06 Fix deduction of partially specialized template parameters
when the specialized parameter is non-trivial, used in a wrapped method
and the type to %template uses typedefs. For example:

  typedef double & DoubleRef;
  template <typename T> struct XX {};
  template <typename T> struct XX<T &> { void fn(T t) {} };
  %template(XXD) XX<DoubleRef>;

The type of the parameter in the instantiated template for fn is now correctly deduced
as double.
2023-02-17 08:23:41 +00:00
..
aggregate_runme.java
allprotected_runme.java
apply_signed_char_runme.java
apply_strings_runme.java
array_member_runme.java
arrays_global_twodim_runme.java
catches_strings_runme.java std::string throws typemaps 2022-09-19 09:09:29 +01:00
char_binary_runme.java Make (char*, size_t) typemap usable for strings of other types in Java. 2015-08-07 19:44:45 +02:00
char_strings_runme.java
class_scope_namespace_runme.java Testcase changes to satisfy pep8 E742 and E743 checks 2017-10-09 07:27:38 +01:00
CommentParser.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
constant_directive_runme.java fix handling of function pointers by %constant directive 2016-03-24 11:22:51 +01:00
cpp11_alias_nested_template_scoping_runme.java Template instantion fixes when template parameter is used twice in type 2019-02-17 20:03:18 +00:00
cpp11_constexpr_runme.java Fix incorrect test case code 2015-07-06 19:50:22 +01:00
cpp11_initializer_list_runme.java gcc-9 testcase warning fix 2019-07-09 08:06:18 +01:00
cpp11_lambda_functions_runme.java Rename all C++0x to C++11 and cpp0x to cpp11 2013-10-07 20:37:00 +01:00
cpp11_move_only_runme.java Performance optimisation for parameters passed by value that are C++11 movable. 2022-07-08 17:41:15 +01:00
cpp11_move_only_valuewrapper_runme.java Movable and move-only types supported in "out" typemaps. 2022-06-30 17:26:48 +01:00
cpp11_move_typemaps_runme.java Provide SWIGTYPE MOVE typemaps in swigmove.i 2022-09-16 08:36:25 +01:00
cpp11_raw_string_literals_runme.java Add more tests for C++11 raw string literals 2019-01-06 00:10:01 +00:00
cpp11_ref_qualifiers_runme.java Add support for conversion operators with ref-qualifiers 2017-08-30 18:17:05 +01:00
cpp11_ref_qualifiers_rvalue_unignore_runme.java Add unignore for rvalue ref-qualifiers 2017-08-30 18:17:04 +01:00
cpp11_ref_qualifiers_typemaps_runme.java Add support for %typemap and member function pointers with qualifiers 2017-09-09 23:46:14 +01:00
cpp11_result_of_runme.java C++11 result_of testcase 2014-03-14 01:57:16 +00:00
cpp11_rvalue_reference_move_runme.java rvalue reference outputs 2022-09-08 08:46:32 +01:00
cpp11_shared_ptr_overload_runme.java Fix overloading of shared_ptr method overloading 2017-09-23 15:19:34 +01:00
cpp11_shared_ptr_template_upcast_runme.java Applying shared_ptr template upcast fix to CSharp, adding CSharp test, and cleanup 2019-05-06 15:30:54 -04:00
cpp11_std_array_runme.java rename std::array testcase 2019-02-13 22:46:20 +00:00
cpp11_std_unique_ptr_runme.java Add missing typecheck typemaps for std::auto_ptr and std::unique_ptr 2022-09-17 10:23:51 +01:00
cpp11_std_unordered_map_runme.java Combine duplicate unordered_set unordered_map testcases 2019-02-12 06:48:13 +00:00
cpp11_std_unordered_set_runme.java Combine duplicate unordered_set unordered_map testcases 2019-02-12 06:48:13 +00:00
cpp11_strongly_typed_enumerations_runme.java Enhance C++11 strongly typed enums testcase 2014-11-27 19:56:08 +00:00
cpp11_strongly_typed_enumerations_simple_runme.java Enhance C++11 strongly typed enums testcase 2014-11-27 19:56:08 +00:00
cpp11_template_typedefs_runme.java Fix scope lookup for template parameters containing unary scope operators 2017-08-16 00:24:24 +01:00
cpp11_thread_local_runme.java Rename all C++0x to C++11 and cpp0x to cpp11 2013-10-07 20:37:00 +01:00
cpp11_type_aliasing_runme.java Fix C++11 type aliasing seg fault. 2015-06-09 07:59:22 +01:00
cpp17_enable_if_t_runme.java rename cpp14_enable_if_t to cpp17_enable_if_t 2022-11-05 17:13:30 +00:00
cpp17_nested_namespaces_runme.java Add support for c++17 nested namespaces 2018-05-14 21:02:10 +01:00
cpp17_nspace_nested_namespaces_runme.java Test c++17 nested namespaces and %nspace 2018-05-14 21:03:31 +01:00
cpp_typedef_runme.java
curiously_recurring_template_pattern_runme.java
default_args_runme.java
default_constructor_runme.java Don't generate constructor wrappers if a base class has a private constructor 2015-07-07 20:15:55 +01:00
derived_nested_runme.java fixed %template declared within class, next to template declaration 2013-12-16 11:43:28 +04:00
director_abstract_runme.java
director_basic_runme.java
director_binary_string_runme.java Fix Java multi-argument typemaps (char *STRING, size_t LENGTH) 2015-05-10 13:35:51 +01:00
director_classes_runme.java Fix comment typo 2022-01-24 12:16:26 +13:00
director_classic_runme.java
director_default_runme.java director string testing additions 2022-02-12 12:09:01 +00:00
director_enum_runme.java
director_exception_catches_runme.java Changes to use common DirectorException class 2017-11-29 20:31:55 +00:00
director_exception_runme.java
director_frob_runme.java
director_ignore_runme.java
director_nested_class_runme.java Expand director_nested_class test to test more than one level of nesting 2014-11-10 19:57:49 +00:00
director_nspace_runme.java Fix for SourceForge Bug #1278 2013-01-02 15:07:56 -06:00
director_ownership_runme.java Fix Java swigReleaseOwnership() and swigTakeOwnership() regression 2018-03-09 08:13:41 +00:00
director_pass_by_value_runme.java Performance optimisation for directors for classes passed by value 2022-07-04 11:19:29 +01:00
director_primitives_runme.java
director_property_runme.java More director const std::string& testing and C# leak fix 2022-02-13 23:00:04 +00:00
director_protected_runme.java
director_ref_runme.java Added missing untracked files. 2015-05-04 15:27:51 -07:00
director_smartptr_runme.java Missing smart pointer handling in Java director extra methods 2017-05-25 20:35:18 +01:00
director_string_runme.java Fix deprecation warning in java testcase 2020-01-14 20:02:15 +00:00
director_thread_runme.java Java directors - more generic thread name setting 2018-10-08 21:38:41 +01:00
director_unroll_runme.java
director_using_member_scopes_runme.java Using declarations, directors and overloaded methods 2022-03-10 22:18:23 +00:00
director_wombat_runme.java
doxygen_alias_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_basic_notranslate_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_basic_translate_runme.java Merge branch 'Issue-1643' 2020-01-16 18:54:47 +00:00
doxygen_basic_translate_style2_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_basic_translate_style3_runme.java Update anther newly merged doxygen Java test for Java 9 API 2020-01-16 19:30:44 +00:00
doxygen_code_blocks_runme.java Remove unused import in java testcase 2020-01-15 22:17:18 +00:00
doxygen_ignore_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_misc_constructs_runme.java Fix syntax error for misplaced Doxygen comment after struct/class member. 2022-12-06 21:31:38 +00:00
doxygen_nested_class_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_parsing_enums_proper_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_parsing_enums_simple_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_parsing_enums_typesafe_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_parsing_enums_typeunsafe_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_parsing_runme.java Fix syntax error for misplaced Doxygen comment after struct/class member. 2022-12-06 21:31:38 +00:00
doxygen_translate_all_tags_runme.java Doxygen Java fix quoting for \image command 2022-10-06 00:29:03 +01:00
doxygen_translate_links_runme.java Rewrite Doxygen unit tests for Java using Java 9 API 2019-12-18 02:45:06 +01:00
doxygen_translate_runme.java Doxygen Java fix quoting for \image command 2022-10-06 00:29:03 +01:00
dynamic_cast_runme.java Better error detection in some java testcases 2014-03-01 16:14:36 +00:00
enum_forward_runme.java
enum_macro_runme.java Fix parser error containing multiple #define statements inside an enum. 2019-02-16 08:09:56 +00:00
enum_thorough_proper_runme.java
enum_thorough_runme.java
enum_thorough_simple_runme.java
enum_thorough_typeunsafe_runme.java
extend_constructor_destructor_runme.java
extend_default_runme.java
extend_special_variables_runme.java
extend_template_method_runme.java Enhance %extend to extend a class with template constructors 2017-01-24 19:01:43 +00:00
extend_typedef_class_runme.java
extern_declaration_runme.java
friends_runme.java Fix friends_runme.* 2022-07-22 17:50:47 +12:00
friends_template_runme.java Add support for friend templates, including operator overloading. 2015-05-05 06:48:25 +01:00
global_namespace_runme.java
ignore_parameter_runme.java Better error detection in some java testcases 2014-03-01 16:14:36 +00:00
imports_runme.java
inctest_runme.java
inherit_target_language_runme.java
intermediary_classname_runme.java
java_constants_runme.java
java_director_assumeoverride_runme.java Rename func to funk in tests to avoid Go keyword problems 2017-06-16 19:24:48 +01:00
java_director_exception_feature_nspace_runme.java Java director exception handling improvements 2017-11-10 19:50:22 +00:00
java_director_exception_feature_runme.java Java director exception handling improvements 2017-11-10 19:50:22 +00:00
java_director_ptrclass_runme.java Enable variable and typemap substitution in typemap kwargs, and a test that verifies this works for directorin:descriptor. 2015-07-22 11:31:21 -07:00
java_director_runme.java Java gc tests failure fix 2014-10-14 19:22:25 +01:00
java_director_typemaps_ptr_runme.java Fix crash Java directors 2018-08-12 13:45:43 +01:00
java_director_typemaps_runme.java Java director typemaps.i testing for pointers added 2018-08-11 17:11:24 +01:00
java_enums_runme.java Fix missing value for first item of enums with trailing comma 2019-07-11 17:15:38 +02:00
java_jnitypes_runme.java Better error detection in some java testcases 2014-03-01 16:14:36 +00:00
java_lib_arrays_dimensionless_runme.java
java_lib_arrays_runme.java
java_lib_various_runme.java Add support for java.nio.Buffer 2014-07-18 15:45:16 +03:00
java_pgcpp_runme.java
java_pragmas_runme.java
java_prepost_runme.java
java_throws_runme.java Add missing Java throws clause for interfaces when using the %interface family of macros. 2018-01-12 07:34:32 +00:00
java_typemaps_proxy_runme.java Test and document imfuncname special variable expansion 2022-05-30 19:00:04 +01:00
java_typemaps_typewrapper_runme.java
kwargs_feature_runme.java The kwargs feature no longer turns on compactdefaultargs for languages that don't support kwargs. 2014-10-21 07:34:51 +01:00
li_boost_intrusive_ptr_runme.java Fix li_boost_intrusive_ptr for various versions of boost 2014-05-18 23:29:06 +01:00
li_boost_shared_ptr_attribute_runme.java Add testcase for %attributestring on shared_ptr 2014-01-11 19:34:22 +00:00
li_boost_shared_ptr_bits_runme.java Fix shared_ptr of classes with private constructors and destructors. 2015-05-14 19:03:06 +01:00
li_boost_shared_ptr_director_runme.java Add director shared_ptr typemaps for Java 2017-10-16 18:21:31 +01:00
li_boost_shared_ptr_runme.java Java gc tests failure fix 2014-10-14 19:22:25 +01:00
li_boost_shared_ptr_template_runme.java
li_carrays_cpp_runme.java Duplicate tests that are run twice as both C and C++ tests to fix parallel make: li_carrays 2016-02-21 18:04:04 +00:00
li_carrays_runme.java Fix array overrun in li_carrays testcase 2015-07-04 20:53:49 +01:00
li_cdata_cpp_runme.java Duplicate tests that are run twice as both C and C++ tests to fix parallel make: li_cdata 2016-02-21 18:04:04 +00:00
li_cdata_runme.java Add support for cdata library for Java 2014-02-15 22:13:50 +00:00
li_std_auto_ptr_runme.java Add missing typecheck typemaps for std::auto_ptr and std::unique_ptr 2022-09-17 10:23:51 +01:00
li_std_except_runme.java
li_std_list_runme.java Java std::vector improvements for types that do not have a default constructor. 2019-03-01 18:01:14 +00:00
li_std_map_runme.java Maps both working as java.util impls 2018-12-27 01:11:54 -05:00
li_std_set_runme.java Fix std::vector<> Java typemaps for primitive types 2019-07-11 13:10:23 +02:00
li_std_string_runme.java
li_std_vector_enum_runme.java
li_std_vector_runme.java Java std::vector constructor performance improvement 2019-06-06 19:29:11 +01:00
li_typemaps_runme.java
long_long_runme.java Java 9 deprecation warning fixes for test-suite and examples 2019-02-21 13:47:39 -08:00
Makefile.in Add machinery for C++14, C++17 and C++20 testing 2022-07-26 15:28:51 +12:00
member_pointer_const_runme.java Add some tests for typedef to member function pointers 2017-03-10 23:25:31 +00:00
member_pointer_runme.java Add some tests for typedef to member function pointers 2017-03-10 23:25:31 +00:00
memberin_extend_runme.java
minherit2_runme.java
multiple_inheritance_abstract_runme.java Fix Java %interface family of macros 2021-04-27 23:37:18 +01:00
multiple_inheritance_interfaces_runme.java Order of interfaces generated for %interface macros 2022-07-20 19:50:53 +01:00
multiple_inheritance_nspace_runme.java Fix Java %interface family of macros 2021-04-27 23:37:18 +01:00
multiple_inheritance_overload_runme.java Fix warning in D test-suite 2022-03-28 19:30:47 +01:00
multiple_inheritance_runme.java
multiple_inheritance_shared_ptr_runme.java Fix Java %interface family of macros 2021-04-27 23:37:18 +01:00
namespace_chase_runme.java Fix type lookup in the presence of using directives and using declarations 2017-08-16 00:24:25 +01:00
namespace_forward_declaration_runme.java
namespace_template_runme.java %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
native_directive_runme.java Add a testcase for testing %native 2019-01-31 23:01:42 +00:00
naturalvar_more_runme.java Add naturalvar_more testcase runtime test 2013-10-11 19:42:19 +01:00
naturalvar_onoff_runme.java %naturalvar feature fixes and documentation 2014-01-11 19:32:43 +00:00
nested_class_runme.java Nested classes support 2013-11-29 07:02:34 +00:00
nested_extend_c_runme.java Add runtime test for %extend and nested union 2014-06-02 07:09:35 +01:00
nested_inheritance_interface_runme.java nested_inheritance_interface testcase enhancement 2019-07-09 19:36:46 +01:00
nested_structs_runme.java fixed out-of-scope nested class definitions, added a test 2013-12-04 01:53:42 +04:00
nested_template_base_runme.java Add testcase for nested inner class deriving from a templated base class and defined outside of the outer class. 2014-12-19 19:35:38 +00:00
nested_workaround_runme.java
nspace_extend_runme.java
nspace_runme.java
operator_overload_runme.java
overload_complicated_runme.java
overload_template_runme.java
pointer_reference_runme.java
preproc_line_file_runme.java Fix preproc_line_file test 2015-01-26 22:35:17 +00:00
primitive_ref_runme.java Better error detection in some java testcases 2014-03-01 16:14:36 +00:00
profiletest_runme.java
proxycode_runme.java Add %proxycode directive for adding code into proxy classes for C#, D and Java 2017-01-13 20:43:50 +00:00
README Fix assorted comment and documentation typos 2014-02-23 17:15:22 +13:00
rename1_runme.java testcase fixes for gcc-9 2019-04-15 23:25:53 +01:00
rename2_runme.java testcase fixes for gcc-9 2019-04-15 23:25:53 +01:00
rename3_runme.java testcase fixes for gcc-9 2019-04-15 23:25:53 +01:00
rename4_runme.java testcase fixes for gcc-9 2019-04-15 23:25:53 +01:00
rename_pcre_encoder_runme.java Add support for case conversion characters in regex substitutions. 2013-10-15 07:17:56 +01:00
rename_pcre_enum_runme.java
rename_wildcard_runme.java Fix %rename override of wildcard %rename for templates 2016-11-28 22:50:52 +00:00
ret_by_value_runme.java
rname_runme.java Eliminate use of fn in testcases 2021-03-30 11:01:51 +13:00
sizet_runme.java
smart_pointer_const_overload_runme.java Warning suppressions in tests 2014-12-22 20:35:13 +00:00
smart_pointer_ignore_runme.java Fix some test-suite warnings 2016-10-16 19:10:35 +01:00
special_variable_macros_runme.java Document patch #33 from previous commit and complete run time tests 2013-04-18 23:20:48 +01:00
special_variables_runme.java
template_class_reuse_name_runme.java Allow an instantiated template to have the same name as the C++ template name 2017-09-29 23:28:04 +01:00
template_classes_runme.java
template_default_arg_runme.java
template_default_cache_runme.java Add template_default_cache runtime tests 2017-01-16 07:46:03 +00:00
template_default_class_parms_runme.java Fix abort using template default parameters 2014-12-28 10:39:53 +00:00
template_default_class_parms_typedef_runme.java
template_function_parm_runme.java Fix seg fault using %template 2023-01-03 23:53:34 +00:00
template_methods_runme.java
template_namespace_forward_declaration_runme.java
template_nested_flat_runme.java Add and improve Ruby test cases in the context of nesting and namespaces 2020-12-16 22:30:46 +01:00
template_nested_runme.java fixed %template within %extend, test added 2013-12-19 02:11:22 +04:00
template_nested_typemaps_runme.java
template_parameters_global_scope_runme.java Fix scope lookup for template parameters containing unary scope operators 2017-08-16 00:24:24 +01:00
template_partial_specialization_runme.java Testcase changes to satisfy pep8 E742 and E743 checks 2017-10-09 07:27:38 +01:00
template_partial_specialization_typedef_runme.java Fix deduction of partially specialized template parameters 2023-02-17 08:23:41 +00:00
template_template_parameters_runme.java Improved template template parameters support. 2022-12-02 19:16:02 +00:00
template_template_template_parameters_runme.java Improved template template parameters support. 2022-12-02 19:16:02 +00:00
template_templated_constructors_runme.java Fix templated constructors regression 2014-12-09 23:48:37 +00:00
template_typedef_inherit_runme.java
template_typedef_typedef_runme.java Work around D test suite failure due to issue #254. 2014-11-06 23:04:35 +01:00
template_using_directive_and_declaration_forward_runme.java Add using declarations to templates into typedef table. 2017-08-16 00:24:25 +01:00
template_using_directive_typedef_runme.java Add using declarations to templates into typedef table. 2017-08-16 00:24:25 +01:00
typedef_classforward_same_name_runme.java Add more runtime typedef_classforward_same_name runtime testing 2017-12-31 16:37:27 +00:00
typedef_funcptr_runme.java Fix handling of typedef'd function pointers for Go 2017-03-17 07:49:21 +00:00
typemap_arrays_runme.java
typemap_namespace_runme.java
typemap_out_optimal_runme.java Rename debug in testcases to trace 2022-08-20 15:09:23 +01:00
typemap_template_parms_runme.java Fix typemap matching to expand template parameters when the name contains template parameters. 2019-02-17 21:38:48 +00:00
unions_runme.java Better error detection in some java testcases 2014-03-01 16:14:36 +00:00
using_directive_and_declaration_forward_runme.java
using_directive_and_declaration_runme.java
using_pointers_runme.java
varargs_runme.java
virtual_poly_runme.java
wallkw_runme.java

See ../README for common README file.

The Java implementation of the test-suite is a little different to the other languages in that all of SWIG's output goes into a subdirectory named after the individual test case. This is so that all the shadow classes can be compiled as Java classes which have to go into separate files. Otherwise the Makefile wouldn't know which .java files would be relevant to the testcase. For this to work the testcase must go into a Java package.

Any testcases which have _runme.java appended after the testcase name will be detected and run.