From 32ef224663d252f7edde5bcb69a9aeb0f3d6571f Mon Sep 17 00:00:00 2001 From: Joel Andersson Date: Tue, 12 Jul 2016 11:02:46 -0500 Subject: Issue #51: Removed subsref, subsasgn from SwigRef.m The current solution is so hacky that it's better for users to add it themselves using %matlabcode --- Examples/test-suite/matlab/array_member_runme.m | 2 +- Examples/test-suite/matlab/li_attribute_runme.m | 14 ++++++------- Examples/test-suite/matlab/naturalvar_runme.m | 2 +- Examples/test-suite/matlab/unions_runme.m | 2 +- Source/Modules/matlab.cxx | 28 ------------------------- 5 files changed, 10 insertions(+), 38 deletions(-) diff --git a/Examples/test-suite/matlab/array_member_runme.m b/Examples/test-suite/matlab/array_member_runme.m index 999c286bb..639b0fead 100644 --- a/Examples/test-suite/matlab/array_member_runme.m +++ b/Examples/test-suite/matlab/array_member_runme.m @@ -1,5 +1,5 @@ f = array_member.Foo(); -f.data = array_member.global_data(); +f.data(array_member.global_data()); for i=0:7, if (array_member.get_value(f.data,i) ~= array_member.get_value(array_member.global_data,i)) diff --git a/Examples/test-suite/matlab/li_attribute_runme.m b/Examples/test-suite/matlab/li_attribute_runme.m index 242fe0da0..646e71654 100644 --- a/Examples/test-suite/matlab/li_attribute_runme.m +++ b/Examples/test-suite/matlab/li_attribute_runme.m @@ -3,7 +3,7 @@ aa = li_attribute.A(1,2,3); if (aa.a ~= 1) error('Failed!!') end -aa.a = 3; +aa.a(3); if (aa.a ~= 3) error('aa.a = %i',aa.a) end @@ -11,7 +11,7 @@ end if (aa.b ~= 2) error(aa.b) end -aa.b = 5; +aa.b(5); if (aa.b ~= 5) error('Failed!!') end @@ -29,7 +29,7 @@ if (pi.value ~= 7) error('Failed!!') end -pi.value=3; +pi.value(3); if (pi.value ~= 3) error('Failed!!') end @@ -42,9 +42,9 @@ end % class/struct attribute with get/set methods using return/pass by reference myFoo = li_attribute.MyFoo(); -myFoo.x = 8; +myFoo.x(8); myClass = li_attribute.MyClass(); -myClass.Foo = myFoo; +myClass.Foo(myFoo); if (myClass.Foo.x ~= 8) error end @@ -57,7 +57,7 @@ end if (myClassVal.ReadOnlyFoo.x ~= -1) error('Failed!!') end -myClassVal.ReadWriteFoo = myFoo; +myClassVal.ReadWriteFoo(myFoo); if (myClassVal.ReadWriteFoo.x ~= 8) error('Failed!!') end @@ -73,7 +73,7 @@ end if (myStringyClass.ReadOnlyString ~= 'initial string') error('Failed!!') end -myStringyClass.ReadWriteString = 'changed string'; +myStringyClass.ReadWriteString('changed string'); if (myStringyClass.ReadWriteString ~= 'changed string') error('Failed!!') end diff --git a/Examples/test-suite/matlab/naturalvar_runme.m b/Examples/test-suite/matlab/naturalvar_runme.m index 57a7b39a0..1881b06ab 100644 --- a/Examples/test-suite/matlab/naturalvar_runme.m +++ b/Examples/test-suite/matlab/naturalvar_runme.m @@ -4,7 +4,7 @@ b = naturalvar.Bar(); b.f(f); naturalvar.s('hello'); -b.s = 'hello'; +b.s('hello'); if (b.s ~= naturalvar.s) error diff --git a/Examples/test-suite/matlab/unions_runme.m b/Examples/test-suite/matlab/unions_runme.m index 06e2b415d..00ea561aa 100644 --- a/Examples/test-suite/matlab/unions_runme.m +++ b/Examples/test-suite/matlab/unions_runme.m @@ -14,7 +14,7 @@ big.jack(300); eut = unions.EmbeddedUnionTest(); % First check the SmallStruct in EmbeddedUnionTest -eut.number = 1; +eut.number(1); eut.uni.small(small); Jill1 = eut.uni.small.jill; if (Jill1 ~= 200) diff --git a/Source/Modules/matlab.cxx b/Source/Modules/matlab.cxx index ef0f22593..7697a1108 100644 --- a/Source/Modules/matlab.cxx +++ b/Source/Modules/matlab.cxx @@ -2717,34 +2717,6 @@ void MATLAB::createSwigRef() { Printf(f_wrap_m," function disp(self)\n"); Printf(f_wrap_m," disp(sprintf('',self.swigPtr))\n"); Printf(f_wrap_m," end\n"); - Printf(f_wrap_m," function varargout = subsref(self,s)\n"); - Printf(f_wrap_m," if numel(s)==1\n"); - Printf(f_wrap_m," switch s.type\n"); - Printf(f_wrap_m," case '.'\n"); - Printf(f_wrap_m," [varargout{1}] = builtin('subsref',self,substruct('.',s.subs,'()',{}));\n"); - Printf(f_wrap_m," case '()'\n"); - Printf(f_wrap_m," [varargout{1:nargout}] = builtin('subsref',self,substruct('.','paren','()',s.subs));\n"); - Printf(f_wrap_m," case '{}'\n"); - Printf(f_wrap_m," [varargout{1:nargout}] = builtin('subsref',self,substruct('.','brace','()',s.subs));\n"); - Printf(f_wrap_m," end\n"); - Printf(f_wrap_m," else\n"); - Printf(f_wrap_m," [varargout{1:nargout}] = builtin('subsref',self,s);\n"); - Printf(f_wrap_m," end\n"); - Printf(f_wrap_m," end\n"); - Printf(f_wrap_m," function self = subsasgn(self,s,v)\n"); - Printf(f_wrap_m," if numel(s)==1\n"); - Printf(f_wrap_m," switch s.type\n"); - Printf(f_wrap_m," case '.'\n"); - Printf(f_wrap_m," builtin('subsref',self,substruct('.',s.subs,'()',{v}));\n"); - Printf(f_wrap_m," case '()'\n"); - Printf(f_wrap_m," builtin('subsref',self,substruct('.','paren_asgn','()',{v, s.subs{:}}));\n"); - Printf(f_wrap_m," case '{}'\n"); - Printf(f_wrap_m," builtin('subsref',self,substruct('.','setbrace','()',{v, s.subs{:}}));\n"); - Printf(f_wrap_m," end\n"); - Printf(f_wrap_m," else\n"); - Printf(f_wrap_m," self = builtin('subsasgn',self,s,v);\n"); - Printf(f_wrap_m," end\n"); - Printf(f_wrap_m," end\n"); Printf(f_wrap_m," function SwigSet(self,ptr)\n"); Printf(f_wrap_m," self.swigPtr = ptr;\n"); Printf(f_wrap_m," end\n"); -- cgit v1.2.1