Mercurial > hg > ishara
view general/funutils/@function_handle/vertcat.m @ 42:ae596261e75f
Various fixes and development to audio handling
author | samer |
---|---|
date | Tue, 02 Dec 2014 14:51:13 +0000 |
parents | c388f1c70669 |
children |
line wrap: on
line source
% vertcat - function combinator % % vertcat :: % (A{:} => _), % (A{:} => _), % ... % (A{:} => C{:}) % -> (A{:} => C{:}). function h=vertcat(varargin) g=varargin{end}; N=length(varargin)-1; fx=varargin(1:N); fns = { @q11, @q1n; @qn1, @qnn }; h=fns{acount(nargin(g),1),acount(nargout(g),1)}; function y=q11(x), callfx1(x); y=g(x); end function y=qn1(varargin), callfxn(varargin); y=g(varargin{:}); end function varargout=q1n(x), callfx1(x); [varargout{1:nargout}]=g(x); end function varargout=qnn(varargin), callfxn(varargin); [varargout{1:nargout}]=g(varargin{:}); end function callfx1(x), for i=1:N, fx{i}(x); end; end function callfxn(args), for i=1:N, fx{i}(args{:}); end; end end