diff general/funutils/@function_handle/ctranspose.m @ 38:9d24b616bb06

Added function algebra.
author samer
date Tue, 29 Jan 2013 15:59:01 +0000
parents
children c388f1c70669
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/general/funutils/@function_handle/ctranspose.m	Tue Jan 29 15:59:01 2013 +0000
@@ -0,0 +1,10 @@
+function h=ctranspose(f,nin,nout)
+	fns = { @q21, @q2n; @qn1, @qnn };
+	if nargin<3, nout=nargout(f); end
+	if nargin<2, nin=nargin(f); end
+	h=fns{acount(nin,2)-1,acount(nout,1)};
+	function y=q21(x,y), y=f(y,x); end
+	function y=qn1(x,y,varargin), y=f(y,x,varargin{:}); end
+	function varargout=q2n(x,y), [varargout{1:nargout}]=f(y,x); end
+	function varargout=qnn(x,y,varargin), [varargout{1:nargout}]=f(y,x,varargin{:}); end
+end