Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Dóra Kocsis
dynare
Commits
fde2694e
Commit
fde2694e
authored
Nov 13, 2012
by
Stéphane Adjemian
Browse files
Added append method in dynDates class (with unitary tests).
parent
32905b1c
Changes
3
Hide whitespace changes
Inline
Side-by-side
matlab/@dynDate/isempty.m
0 → 100644
View file @
fde2694e
function
b
=
isempty
(
a
)
%
@info
:
%!
@deftypefn
{
Function
File
}
{
@var
{
b
}
=
}
isempty
(
@var
{
a
})
%!
@anchor
{
@dynDate
/
isempty
}
%!
@sp
1
%!
Overloads
the
isempty
function
for
the
@ref
{
dynDate
}
class
.
%!
@sp
2
%!
@strong
{
Inputs
}
%!
@sp
1
%!
@table
@
@var
%!
@item
a
%!
Dynare
date
object
instantiated
by
@ref
{
dynDate
}.
%!
@end
table
%!
@sp
1
%!
@strong
{
Outputs
}
%!
@sp
1
%!
@table
@
@var
%!
@item
b
%!
Integer
scalar
(
equal
to
zero
if
@var
{
a
}
is
not
empty
).
%!
@end
table
%!
@sp
2
%!
@strong
{
This
function
is
called
by
:
}
%!
@sp
2
%!
@strong
{
This
function
calls
:
}
%!
@sp
2
%!
@end
deftypefn
%
@eod
:
%
Copyright
(
C
)
2012
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/>.
%
Original
author
:
stephane
DOT
adjemian
AT
univ
DASH
lemans
DOT
fr
if
~
isa
(
a
,
'
dynDate
'
)
error
([
'
dynDate
:
:
isempty
:
Input
argument
'
inputname
(
1
)
'
have
to
be
a
dynDate
object
!
'
])
end
b
=
all
(
isnan
(
a
.
time
));
\ No newline at end of file
matlab/@dynDates/append.m
0 → 100644
View file @
fde2694e
function
dd
=
append
(
dd
,
a
)
%
sort
method
for
dynDates
class
.
%
@info
:
%!
@deftypefn
{
Function
File
}
{
@var
{
dd
}
=
}
sort
(
@var
{
dd
},
@var
{
a
})
%!
@anchor
{
dynDates
/
append
}
%!
@sp
1
%!
Append
method
for
the
Dynare
dates
class
.
%!
@sp
2
%!
@strong
{
Inputs
}
%!
@sp
1
%!
@table
@
@var
%!
@item
dd
%!
Object
instantiated
by
@ref
{
dynDates
}.
%!
@item
a
%!
Object
instantiated
by
@ref
{
dynDate
}.
%!
@end
table
%!
@sp
2
%!
@strong
{
Outputs
}
%!
@sp
1
%!
@table
@
@var
%!
@item
dd
%!
Object
instantiated
by
@ref
{
dynDates
},
with
an
additional
date
(
@var
{
a
}).
%!
@end
table
%!
@sp
2
%!
@strong
{
This
function
is
called
by
:
}
%!
@sp
2
%!
@strong
{
This
function
calls
:
}
%!
%!
@end
deftypefn
%
@eod
:
%
Copyright
(
C
)
2012
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/>.
%
AUTHOR
(
S
)
stephane
DOT
adjemian
AT
univ
DASH
lemans
DOT
fr
if
~
isa
(
dd
,
'
dynDates
'
)
error
([
'
dynDates
:
:
append
:
Input
argument
'
inputname
(
dd
)
'
has
to
be
a
dynDates
object
.
'
])
end
if
~
isa
(
a
,
'
dynDate
'
)
||
ischar
(
a
)
error
([
'
dynDates
:
:
append
:
Input
argument
'
inputname
(
a
)
'
has
to
be
a
dynDate
object
or
a
string
(
formatted
date
).
'
])
end
if
isempty
(
a
)
return
end
if
isa
(
a
,
'
dynDate
'
)
dd
.
time
=
[
dd
.
time
;
a
.
time
];
dd
.
ndat
=
dd
.
ndat
+
1
;
else
tmp
=
dynDate
();
dd
.
time
=
[
dd
.
time
;
tmp
(
a
).
time
];
dd
.
ndat
=
dd
.
ndat
+
1
;
end
%
@test
:
1
%
$
%
Define
some
dates
%
$
B1
=
'
1953
Q4
'
;
%
$
B2
=
'
1950
Q2
'
;
%
$
B3
=
'
1950
Q1
'
;
%
$
B4
=
'
1945
Q3
'
;
%
$
B5
=
'
2009
Q2
'
;
%
$
%
$
%
Define
expected
results
.
%
$
e
.
time
=
[
1945
3
;
1950
1
;
1950
2
;
1953
4
;
2009
2
];
%
$
e
.
freq
=
4
;
%
$
e
.
ndat
=
5
;
%
$
%
$
%
Call
the
tested
routine
.
%
$
d
=
dynDates
(
B4
,
B3
,
B2
,
B1
);
%
$
d
=
d
.
append
(
dynDate
(
B5
));
%
$
%
$
%
Check
the
results
.
%
$
t
(
1
)
=
dyn_assert
(
d
.
time
,
e
.
time
);
%
$
t
(
2
)
=
dyn_assert
(
d
.
freq
,
e
.
freq
);
%
$
t
(
3
)
=
dyn_assert
(
d
.
ndat
,
e
.
ndat
);
%
$
T
=
all
(
t
);
%
@eof
:
1
\ No newline at end of file
matlab/@dynDates/subsref.m
View file @
fde2694e
...
...
@@ -55,7 +55,7 @@ if isequal(S(1).type,'.')
switch
S
(
1
).
subs
case
{'
time
','
freq
','
ndat
'}
%
Public
members
.
B
=
builtin
(
'
subsref
'
,
A
,
S
(
1
));
case
{'
sort
'
}
%
Give
"dot access"
to
public
methods
.
case
{'
sort
'
,'
append
'}
%
Give
"dot access"
to
public
methods
.
if
length
(
S
)
==
1
B
=
feval
(
S
(
1
).
subs
,
A
);
else
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment