annotate general/funutils/doer.m @ 8:f0a3d7d7a0e3

Renamed cat_sep function to catsep
author samer
date Mon, 14 Jan 2013 14:54:10 +0000
parents e44f49929e56
children
rev   line source
samer@4 1 function h=funseq(varargin)
samer@4 2 % funseq - Constructs sequential application of several functions
samer@4 3 %
samer@4 4 % h=funseq(f,...,g)
samer@4 5 %
samer@4 6 % returns the function h such that h(...) = g(...) but
samer@4 7 % all functions are evaluated in order.
samer@4 8
samer@4 9 fns=varargin;
samer@4 10 h=@seq;
samer@4 11
samer@4 12 function varargout=seq(varargin)
samer@4 13 for i=1:length(fns)-1
samer@4 14 feval(fns{i},varargin{:});
samer@4 15 end
samer@4 16 if nargout==0,
samer@4 17 feval(fns{end},varargin{:});
samer@4 18 else
samer@4 19 [varargout{1:nargout}]=feval(fns{end},varargin{:});
samer@4 20 end
samer@4 21 end
samer@4 22 end