annotate general/funutils/@function_handle/ctranspose.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents c388f1c70669
children
rev   line source
samer@39 1 % ctranspose - flip first two function arguments
samer@39 2 %
samer@39 3 % ctranspose :: (A,B,C{:}=>D{:}) -> (B,A,C{:}=>D{:}).
samer@38 4 function h=ctranspose(f,nin,nout)
samer@38 5 fns = { @q21, @q2n; @qn1, @qnn };
samer@38 6 if nargin<3, nout=nargout(f); end
samer@38 7 if nargin<2, nin=nargin(f); end
samer@38 8 h=fns{acount(nin,2)-1,acount(nout,1)};
samer@38 9 function y=q21(x,y), y=f(y,x); end
samer@38 10 function y=qn1(x,y,varargin), y=f(y,x,varargin{:}); end
samer@38 11 function varargout=q2n(x,y), [varargout{1:nargout}]=f(y,x); end
samer@38 12 function varargout=qnn(x,y,varargin), [varargout{1:nargout}]=f(y,x,varargin{:}); end
samer@38 13 end