diff --git a/src/DynareBison.yy b/src/DynareBison.yy index 0acc771935d4e8b8c6657b49dc770eb2776641ff..b3f1677463c6597e644271f3fa7c5a64e6ac6b4c 100644 --- a/src/DynareBison.yy +++ b/src/DynareBison.yy @@ -83,7 +83,7 @@ class ParsingDriver; %token DATAFILE FILE SERIES DOUBLING DR_CYCLE_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_MAXITER DR_ALGO DROP DSAMPLE DYNASAVE DYNATYPE CALIBRATION DIFFERENTIATE_FORWARD_VARS %token END ENDVAL EQUAL ESTIMATION ESTIMATED_PARAMS ESTIMATED_PARAMS_BOUNDS ESTIMATED_PARAMS_INIT EXTENDED_PATH ENDOGENOUS_PRIOR EXPRESSION %token FILENAME DIRNAME FILTER_STEP_AHEAD FILTERED_VARS FIRST_OBS LAST_OBS SET_TIME OSR_PARAMS_BOUNDS KEEP_KALMAN_ALGO_IF_SINGULARITY_IS_DETECTED -%token <string> FLOAT_NUMBER DATES +%token <string> FALSE FLOAT_NUMBER DATES %token DEFAULT FIXED_POINT FLIP OPT_ALGO COMPILATION_SETUP COMPILER ADD_FLAGS SUBSTITUTE_FLAGS ADD_LIBS SUBSTITUTE_LIBS %token FORECAST K_ORDER_SOLVER INSTRUMENTS SHIFT MEAN STDEV VARIANCE MODE INTERVAL SHAPE DOMAINN %token GAMMA_PDF GRAPH GRAPH_FORMAT CONDITIONAL_VARIANCE_DECOMPOSITION NOCHECK STD @@ -116,7 +116,7 @@ class ParsingDriver; %token STDERR STEADY STOCH_SIMUL SYLVESTER SYLVESTER_FIXED_POINT_TOL REGIMES REGIME REALTIME_SHOCK_DECOMPOSITION CONDITIONAL UNCONDITIONAL %token TEX RAMSEY_MODEL RAMSEY_POLICY RAMSEY_CONSTRAINTS PLANNER_DISCOUNT PLANNER_DISCOUNT_LATEX_NAME %token DISCRETIONARY_POLICY DISCRETIONARY_TOL EVALUATE_PLANNER_OBJECTIVE -%token <string> TEX_NAME +%token <string> TEX_NAME TRUE %token UNIFORM_PDF UNIT_ROOT_VARS USE_DLL USEAUTOCORR GSA_SAMPLE_FILE USE_UNIVARIATE_FILTERS_IF_SINGULARITY_IS_DETECTED %token VALUES VAR VAREXO VAREXO_DET VARIABLE VAROBS VAREXOBS PREDETERMINED_VARIABLES VAR_EXPECTATION VAR_EXPECTATION_MODEL PLOT_SHOCK_DECOMPOSITION MODEL_LOCAL_VARIABLE %token WRITE_LATEX_DYNAMIC_MODEL WRITE_LATEX_STATIC_MODEL WRITE_LATEX_ORIGINAL_MODEL CROSSEQUATIONS COVARIANCE WRITE_LATEX_STEADY_STATE_MODEL @@ -180,7 +180,7 @@ class ParsingDriver; %type <string> vec_of_vec_value vec_value_list date_expr number %type <string> vec_value_1 vec_value signed_inf signed_number_w_inf %type <string> range vec_value_w_inf vec_value_1_w_inf -%type <string> integer_range signed_integer_range +%type <string> integer_range signed_integer_range boolean %type <string> sub_sampling_options list_sub_sampling_option %type <SymbolType> change_type_arg %type <vector<string>> vec_str vec_str_1 @@ -1586,6 +1586,10 @@ signed_number_w_inf : signed_inf | signed_number ; +boolean : TRUE + | FALSE + ; + estimated_params : ESTIMATED_PARAMS ';' estimated_list END ';' { driver.estimated_params(); }; estimated_list : estimated_list estimated_elem @@ -2095,6 +2099,8 @@ list_optim_option : QUOTED_STRING COMMA QUOTED_STRING { driver.optim_options_string($1, $3); } | QUOTED_STRING COMMA signed_number { driver.optim_options_num($1, $3); } + | QUOTED_STRING COMMA boolean + { driver.optim_options_num($1, $3); } ; optim_options : list_optim_option @@ -3957,6 +3963,8 @@ symbol : NAME | NONE | DR | PRIOR + | TRUE + | FALSE ; diff --git a/src/DynareFlex.ll b/src/DynareFlex.ll index 7b7c962dd6d350e5660430dbfe2ce6faa3f3f898..b8fc7a5b4fc3780acd8a72b16a2d4f419824157e 100644 --- a/src/DynareFlex.ll +++ b/src/DynareFlex.ll @@ -796,6 +796,14 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4]) <DYNARE_STATEMENT>coefficients {return token::COEFFICIENTS;} <DYNARE_STATEMENT>variances {return token::VARIANCES;} <DYNARE_STATEMENT>equations {return token::EQUATIONS;} +<DYNARE_STATEMENT>true { + yylval->build<string>(yytext); + return token::TRUE; +} +<DYNARE_STATEMENT>false { + yylval->build<string>(yytext); + return token::FALSE; +} <DYNARE_STATEMENT,DYNARE_BLOCK>\. {return Dynare::parser::token_type (yytext[0]);} <DYNARE_STATEMENT>\\ {return Dynare::parser::token_type (yytext[0]);}