Home > freetb4matlab > general > structfun.m





function varargout = structfun (fun, s, varargin);


% -*- texinfo -*-
% @deftypefn {Function File} {} structfun (@var{func}, @var{s})
% @deftypefnx {Function File} {[@var{a}, @var{b}] =} structfun (@dots{})
% @deftypefnx {Function File} {} structfun (@dots{}, 'ErrorHandler', @var{errfunc})
% @deftypefnx {Function File} {} structfun (@dots{}, 'UniformOutput', @var{val})
% Evaluate the function named @var{name} on the fields of the structure
% @var{s}.  The fields of @var{s} are passed to the function @var{func}
% individually.
% @code{structfun} accepts an arbitrary function @var{func} in the form of 
% an inline function, function handle, or the name of a function (in a 
% character string).  In the case of a character string argument, the 
% function must accept a single argument named @var{x}, and it must return 
% a string value.  If the function returns more than one argument, they are
% returned as separate output variables.
% If the parameter 'UniformOutput' is set to true (the default), then the function
% must return a single element which will be concatenated into the
% return value.  If 'UniformOutput' is false, the outputs placed in a structure
% with the same fieldnames as the input structure.
% @example
% @group
% s.name1 = 'John Smith'; 
% s.name2 = 'Jill Jones'; 
% structfun (@@(x) regexp (x, '(\w+)$', 'matches')@{1@}, s, 
%            'UniformOutput', false)
% @end group
% @end example
% Given the parameter 'ErrorHandler', then @var{errfunc} defines a function to
% call in case @var{func} generates an error.  The form of the function is
% @example
% function [@dots{}] = errfunc (@var{se}, @dots{})
% @end example
% where there is an additional input argument to @var{errfunc} relative to
% @var{func}, given by @var{se}.  This is a structure with the elements
% 'identifier', 'message' and 'index', giving respectively the error
% identifier, the error message, and the index into the input arguments
% of the element that caused the error.
% @seealso{cellfun, arrayfun}
% @end deftypefn


This function calls: This function is called by:
Generated on Sat 16-May-2009 00:04:49 by m2html © 2003