0001 function md = subsasgn(md,index,val)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 if ~isempty(md.repository),
0013 field=index(1).subs;
0014 if exist(['.' md.repository '.' field],'file'),
0015 if length(index)==1,
0016
0017 eval([field '=val;']);
0018 eval(['save .' md.repository '.' field ' ' field]);
0019 else
0020
0021 load(['.' md.repository '.' field],'-mat');
0022 fieldval=eval(field);
0023 eval([field '=builtin(''subsasgn'',fieldval,index(2),val);']);
0024 eval(['save .' md.repository '.' field ' ' field]);
0025 end
0026 else
0027 md=builtin('subsasgn',md,index,val);
0028 end
0029 else
0030 md=builtin('subsasgn',md,index,val);
0031 end