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
38ef4c23
Commit
38ef4c23
authored
Nov 15, 2013
by
Houtan Bastani
Browse files
preprocessor: support long name for parameters,
#478
parent
ac2cd6f3
Changes
5
Hide whitespace changes
Inline
Side-by-side
doc/dynare.texi
View file @
38ef4c23
...
...
@@ -1108,7 +1108,7 @@ varexo_det tau;
@end deffn
@deffn Command parameters @var{PARAMETER_NAME} [$@var{LATEX_NAME}$]@dots{};
@deffn Command parameters @var{PARAMETER_NAME} [$@var{LATEX_NAME}$
[(long_name=@var{QUOTED_STRING})]
]@dots{};
@descriptionhead
...
...
@@ -1123,6 +1123,12 @@ initialization}).
@code{parameters} commands can appear several times in the file and
Dynare will concatenate them.
@optionshead
@table @code
@item long_name = @var{QUOTED_STRING}
Like @ref{long_name} but value stored in @code{M_.param_names_long}.
@end table
@examplehead
@example
...
...
preprocessor/DynareBison.yy
View file @
38ef4c23
...
...
@@ -430,6 +430,12 @@ parameter_list : parameter_list symbol
{ driver.declare_parameter($3, $4); }
| symbol TEX_NAME
{ driver.declare_parameter($1, $2); }
| parameter_list symbol TEX_NAME named_var
{ driver.declare_parameter($2, $3, $4); }
| parameter_list COMMA symbol TEX_NAME named_var
{ driver.declare_parameter($3, $4, $5); }
| symbol TEX_NAME named_var
{ driver.declare_parameter($1, $2, $3); }
;
predetermined_variables_list : predetermined_variables_list symbol
...
...
preprocessor/ParsingDriver.cc
View file @
38ef4c23
...
...
@@ -186,12 +186,14 @@ ParsingDriver::declare_exogenous_det(string *name, string *tex_name, string *lon
}
void
ParsingDriver
::
declare_parameter
(
string
*
name
,
string
*
tex_name
)
ParsingDriver
::
declare_parameter
(
string
*
name
,
string
*
tex_name
,
string
*
long_name
)
{
declare_symbol
(
name
,
eParameter
,
tex_name
,
NULL
);
declare_symbol
(
name
,
eParameter
,
tex_name
,
long_name
);
delete
name
;
if
(
tex_name
!=
NULL
)
delete
tex_name
;
if
(
long_name
!=
NULL
)
delete
long_name
;
}
void
...
...
preprocessor/ParsingDriver.hh
View file @
38ef4c23
...
...
@@ -264,7 +264,7 @@ public:
//! Declares an exogenous deterministic variable
void
declare_exogenous_det
(
string
*
name
,
string
*
tex_name
=
NULL
,
string
*
long_name
=
NULL
);
//! Declares a parameter
void
declare_parameter
(
string
*
name
,
string
*
tex_name
=
NULL
);
void
declare_parameter
(
string
*
name
,
string
*
tex_name
=
NULL
,
string
*
long_name
=
NULL
);
//! Declares a statement local variable
void
declare_statement_local_variable
(
string
*
name
);
//! Completes a subsample statement
...
...
preprocessor/SymbolTable.cc
View file @
38ef4c23
...
...
@@ -211,10 +211,12 @@ SymbolTable::writeOutput(ostream &output) const throw (NotYetFrozenException)
{
output
<<
"M_.param_names = '"
<<
getName
(
param_ids
[
0
])
<<
"';"
<<
endl
;
output
<<
"M_.param_names_tex = '"
<<
getTeXName
(
param_ids
[
0
])
<<
"';"
<<
endl
;
output
<<
"M_.param_names_long = '"
<<
getLongName
(
param_ids
[
0
])
<<
"';"
<<
endl
;
for
(
int
id
=
1
;
id
<
param_nbr
();
id
++
)
{
output
<<
"M_.param_names = char(M_.param_names, '"
<<
getName
(
param_ids
[
id
])
<<
"');"
<<
endl
<<
"M_.param_names_tex = char(M_.param_names_tex, '"
<<
getTeXName
(
param_ids
[
id
])
<<
"');"
<<
endl
;
<<
"M_.param_names_tex = char(M_.param_names_tex, '"
<<
getTeXName
(
param_ids
[
id
])
<<
"');"
<<
endl
<<
"M_.param_names_long = char(M_.param_names_long, '"
<<
getLongName
(
param_ids
[
id
])
<<
"');"
<<
endl
;
if
(
getName
(
param_ids
[
id
])
==
"dsge_prior_weight"
)
output
<<
"options_.dsge_var = 1;"
<<
endl
;
...
...
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