Fixed display issues for dynDate and dynDates empty objects.

time-shift
Stéphane Adjemian (Charybdis) 2013-07-01 17:22:05 +02:00
parent 7459a5dcbb
commit f042fcdd7b
4 changed files with 83 additions and 1 deletions

24
matlab/@dynDate/disp.m Normal file
View File

@ -0,0 +1,24 @@
function disp(d)
% Copyright (C) 2013 Dynare Team
%
% This file is part of Dynare.
%
% Dynare is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% Dynare is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
if isempty(d)
fprintf('%s is an empty dynDate object.\n', inputname(1));
else
fprintf('%s = <dynDate: %s>\n', inputname(1), format(d));
end

View File

@ -17,4 +17,8 @@ function display(d)
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
fprintf('%s = <dynDate: %s>\n', inputname(1), format(d));
if isempty(d)
fprintf('%s is an empty dynDate object.\n', inputname(1));
else
fprintf('%s = <dynDate: %s>\n', inputname(1), format(d));
end

49
matlab/@dynDates/disp.m Normal file
View File

@ -0,0 +1,49 @@
function disp(dd)
% Copyright (C) 2013 Dynare Team
%
% This file is part of Dynare.
%
% Dynare is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% Dynare is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
if isempty(dd)
fprintf('%s is an empty dynDates object.\n', inputname(1));
return
end
max_displayed = 5;
first_displayed = 2;
fprintf('%s = <dynDates: ', inputname(1));
if dd.ndat<=max_displayed
for i=1:dd.ndat
fprintf(format(dynDate(dd.time(i,:),dd.freq)))
if i<dd.ndat
fprintf(', ')
else
fprintf('>\n')
end
end
else
for i=1:first_displayed
fprintf(format(dynDate(dd.time(i,:),dd.freq)))
fprintf(', ')
end
fprintf(' ..., ')
fprintf(format(dynDate(dd.time(dd.ndat-1,:),dd.freq)))
fprintf(', ')
fprintf(format(dynDate(dd.time(dd.ndat,:),dd.freq)))
fprintf('>\n')
end

View File

@ -17,6 +17,11 @@ function display(dd)
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
if isempty(dd)
fprintf('%s is an empty dynDates object.\n', inputname(1));
return
end
max_displayed = 5;
first_displayed = 2;