From 6e9be0feb4fe5fdcf1362cdbab9e3b0e8f735869 Mon Sep 17 00:00:00 2001 From: Houtan Bastani <houtan@dynare.org> Date: Fri, 29 Mar 2013 15:40:53 +0100 Subject: [PATCH] reporting: support end keyword for indexing --- matlab/reporting/@graph/end.m | 35 ++++++++++++++++++++++++++++++++ matlab/reporting/@page/end.m | 35 ++++++++++++++++++++++++++++++++ matlab/reporting/@pages/end.m | 35 ++++++++++++++++++++++++++++++++ matlab/reporting/@section/end.m | 35 ++++++++++++++++++++++++++++++++ matlab/reporting/@sections/end.m | 35 ++++++++++++++++++++++++++++++++ 5 files changed, 175 insertions(+) create mode 100644 matlab/reporting/@graph/end.m create mode 100644 matlab/reporting/@page/end.m create mode 100644 matlab/reporting/@pages/end.m create mode 100644 matlab/reporting/@section/end.m create mode 100644 matlab/reporting/@sections/end.m diff --git a/matlab/reporting/@graph/end.m b/matlab/reporting/@graph/end.m new file mode 100644 index 0000000000..52f11f3645 --- /dev/null +++ b/matlab/reporting/@graph/end.m @@ -0,0 +1,35 @@ +function lastIndex = end(o, k, n) +% function lastIndex = end(o, k, n) +% End keyword +% +% INPUTS +% o [graph] graph object +% k [integer] index where end appears +% n [integer] number of indices +% +% OUTPUTS +% lastIndex [integer] last graph index +% +% SPECIAL REQUIREMENTS +% none + +% 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/>. + +assert(k==1 && n==1, '@graph/end: graph only has one dimension'); +lastIndex = o.seriesElements.numElements(); +end \ No newline at end of file diff --git a/matlab/reporting/@page/end.m b/matlab/reporting/@page/end.m new file mode 100644 index 0000000000..073a271b44 --- /dev/null +++ b/matlab/reporting/@page/end.m @@ -0,0 +1,35 @@ +function lastIndex = end(o, k, n) +% function lastIndex = end(o, k, n) +% End keyword +% +% INPUTS +% o [page] page object +% k [integer] index where end appears +% n [integer] number of indices +% +% OUTPUTS +% lastIndex [integer] last sections index +% +% SPECIAL REQUIREMENTS +% none + +% 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/>. + +assert(k==1 && n==1, '@page/end: page only has one dimension'); +lastIndex = numSections(o); +end \ No newline at end of file diff --git a/matlab/reporting/@pages/end.m b/matlab/reporting/@pages/end.m new file mode 100644 index 0000000000..02754f4c27 --- /dev/null +++ b/matlab/reporting/@pages/end.m @@ -0,0 +1,35 @@ +function lastIndex = end(o, k, n) +% function lastIndex = end(o, k, n) +% End keyword +% +% INPUTS +% o [pages] pages object +% k [integer] index where end appears +% n [integer] number of indices +% +% OUTPUTS +% lastIndex [integer] last pages index +% +% SPECIAL REQUIREMENTS +% none + +% 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/>. + +assert(k==1 && n==1, '@pages/end: pages only has one dimension'); +lastIndex = numPages(o); +end \ No newline at end of file diff --git a/matlab/reporting/@section/end.m b/matlab/reporting/@section/end.m new file mode 100644 index 0000000000..0017c4b314 --- /dev/null +++ b/matlab/reporting/@section/end.m @@ -0,0 +1,35 @@ +function lastIndex = end(o, k, n) +% function lastIndex = end(o, k, n) +% End keyword +% +% INPUTS +% o [section] section object +% k [integer] index where end appears +% n [integer] number of indices +% +% OUTPUTS +% lastIndex [integer] last section index +% +% SPECIAL REQUIREMENTS +% none + +% 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/>. + +assert(k==1 && n==1, '@section/end: section only has one dimension'); +lastIndex = numElements(o); +end \ No newline at end of file diff --git a/matlab/reporting/@sections/end.m b/matlab/reporting/@sections/end.m new file mode 100644 index 0000000000..c9fc0cd92e --- /dev/null +++ b/matlab/reporting/@sections/end.m @@ -0,0 +1,35 @@ +function lastIndex = end(o, k, n) +% function lastIndex = end(o, k, n) +% End keyword +% +% INPUTS +% o [sections] sections object +% k [integer] index where end appears +% n [integer] number of indices +% +% OUTPUTS +% lastIndex [integer] last sections index +% +% SPECIAL REQUIREMENTS +% none + +% 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/>. + +assert(k==1 && n==1, '@sections/end: sections only has one dimension'); +lastIndex = numSections(o); +end \ No newline at end of file -- GitLab