mirror of https://github.com/swig/swig
119 lines
5.5 KiB
Java
119 lines
5.5 KiB
Java
|
|
import cpp11_assign_delete.*;
|
|
|
|
public class cpp11_assign_delete_runme {
|
|
|
|
static {
|
|
try {
|
|
System.loadLibrary("cpp11_assign_delete");
|
|
} catch (UnsatisfiedLinkError e) {
|
|
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
|
|
System.exit(1);
|
|
}
|
|
}
|
|
|
|
public static void main(String argv[]) {
|
|
MemberVars mv = new MemberVars();
|
|
MemberArrayVars mav = new MemberArrayVars();
|
|
|
|
// (1) Test directly non-assignable member variables
|
|
// These will only have getters
|
|
AssignPublic a1 = mv.getMemberPublic();
|
|
AssignProtected a2 = mv.getMemberProtected();
|
|
AssignPrivate a3 = mv.getMemberPrivate();
|
|
|
|
AssignPublic ma1 = mav.getArrayMemberPublic();
|
|
AssignProtected ma2 = mav.getArrayMemberProtected();
|
|
AssignPrivate ma3 = mav.getArrayMemberPrivate();
|
|
|
|
// (2) Test indirectly non-assignable member variables via inheritance
|
|
InheritedMemberVars imv = new InheritedMemberVars();
|
|
// These will only have getters
|
|
AssignPublicDerived a4 = imv.getMemberPublicDerived();
|
|
AssignProtectedDerived a5 = imv.getMemberProtectedDerived();
|
|
AssignPrivateDerived a6 = imv.getMemberPrivateDerived();
|
|
|
|
AssignPublicDerived sa4 = InheritedMemberVars.getStaticMemberPublicDerived();
|
|
AssignProtectedDerived sa5 = InheritedMemberVars.getStaticMemberProtectedDerived();
|
|
AssignPrivateDerived sa6 = InheritedMemberVars.getStaticMemberPrivateDerived();
|
|
|
|
AssignPublicDerived ga4 = cpp11_assign_delete.getGlobalPublicDerived();
|
|
AssignProtectedDerived ga5 = cpp11_assign_delete.getGlobalProtectedDerived();
|
|
AssignPrivateDerived ga6 = cpp11_assign_delete.getGlobalPrivateDerived();
|
|
|
|
// These will have getters and setters
|
|
AssignPublicDerivedSettable a7 = imv.getMemberPublicDerivedSettable();
|
|
imv.setMemberPublicDerivedSettable(a7);
|
|
AssignProtectedDerivedSettable a8 = imv.getMemberProtectedDerivedSettable();
|
|
imv.setMemberProtectedDerivedSettable(a8);
|
|
AssignPrivateDerivedSettable a9 = imv.getMemberPrivateDerivedSettable();
|
|
imv.setMemberPrivateDerivedSettable(a9);
|
|
|
|
AssignPublicDerivedSettable sa7 = InheritedMemberVars.getStaticMemberPublicDerivedSettable();
|
|
InheritedMemberVars.setStaticMemberPublicDerivedSettable(sa7);
|
|
AssignProtectedDerivedSettable sa8 = InheritedMemberVars.getStaticMemberProtectedDerivedSettable();
|
|
InheritedMemberVars.setStaticMemberProtectedDerivedSettable(sa8);
|
|
AssignPrivateDerivedSettable sa9 = InheritedMemberVars.getStaticMemberPrivateDerivedSettable();
|
|
InheritedMemberVars.setStaticMemberPrivateDerivedSettable(sa9);
|
|
|
|
AssignPublicDerivedSettable ga7 = cpp11_assign_delete.getGlobalPublicDerivedSettable();
|
|
cpp11_assign_delete.setGlobalPublicDerivedSettable(ga7);
|
|
AssignProtectedDerivedSettable ga8 = cpp11_assign_delete.getGlobalProtectedDerivedSettable();
|
|
cpp11_assign_delete.setGlobalProtectedDerivedSettable(ga8);
|
|
AssignPrivateDerivedSettable ga9 = cpp11_assign_delete.getGlobalPrivateDerivedSettable();
|
|
cpp11_assign_delete.setGlobalPrivateDerivedSettable(ga9);
|
|
|
|
// (3) Test indirectly non-assignable member variables via classes that themselves have non-assignable member variables
|
|
{
|
|
MembersMemberVars m = new MembersMemberVars();
|
|
|
|
// These will only have getters
|
|
MemberPublicVar mpv1 = m.getMemberPublic();
|
|
MemberProtectedVar mpv2 = m.getMemberProtected();
|
|
MemberPrivateVar mpv3 = m.getMemberPrivate();
|
|
|
|
MemberPublicVar smpv1 = StaticMembersMemberVars.getStaticMemberPublic();
|
|
MemberProtectedVar smpv2 = StaticMembersMemberVars.getStaticMemberProtected();
|
|
MemberPrivateVar smpv3 = StaticMembersMemberVars.getStaticMemberPrivate();
|
|
|
|
MemberPublicVar gmpv1 = cpp11_assign_delete.getGlobalMemberPublic();
|
|
MemberProtectedVar gmpv2 = cpp11_assign_delete.getGlobalMemberProtected();
|
|
MemberPrivateVar gmpv3 = cpp11_assign_delete.getGlobalMemberPrivate();
|
|
|
|
// Setters and getters available
|
|
StaticMembersMemberVarsHolder smmvh = new StaticMembersMemberVarsHolder();
|
|
StaticMembersMemberVars member = smmvh.getMember();
|
|
smmvh.setMember(member);
|
|
|
|
StaticMembersMemberVars smmv = cpp11_assign_delete.getGlobalStaticMembersMemberVars();
|
|
cpp11_assign_delete.setGlobalStaticMembersMemberVars(smmv);
|
|
}
|
|
|
|
// (4) Test indirectly non-assignable member variables via classes that themselves have non-assignable array member variables
|
|
{
|
|
MembersMemberArrayVars m = new MembersMemberArrayVars();
|
|
|
|
// These will only have getters
|
|
MemberPublicArrayVar mpv1 = m.getMemberPublic();
|
|
MemberProtectedArrayVar mpv2 = m.getMemberProtected();
|
|
MemberPrivateArrayVar mpv3 = m.getMemberPrivate();
|
|
|
|
MemberPublicArrayVar smpv1 = StaticMembersMemberArrayVars.getStaticMemberPublic();
|
|
MemberProtectedArrayVar smpv2 = StaticMembersMemberArrayVars.getStaticMemberProtected();
|
|
MemberPrivateArrayVar smpv3 = StaticMembersMemberArrayVars.getStaticMemberPrivate();
|
|
|
|
MemberPublicArrayVar gmpv1 = cpp11_assign_delete.getGlobalArrayMemberPublic();
|
|
MemberProtectedArrayVar gmpv2 = cpp11_assign_delete.getGlobalArrayMemberProtected();
|
|
MemberPrivateArrayVar gmpv3 = cpp11_assign_delete.getGlobalArrayMemberPrivate();
|
|
|
|
// Setters and getters available
|
|
StaticMembersMemberArrayVarsHolder smmvh = new StaticMembersMemberArrayVarsHolder();
|
|
StaticMembersMemberArrayVars member = smmvh.getMember();
|
|
smmvh.setMember(member);
|
|
|
|
StaticMembersMemberArrayVars smmv = cpp11_assign_delete.getGlobalStaticMembersMemberArrayVars();
|
|
cpp11_assign_delete.setGlobalStaticMembersMemberArrayVars(smmv);
|
|
}
|
|
}
|
|
}
|