From: Lukáš Jiřiště Date: Mon, 13 Jul 2026 18:53:35 +0000 (+0200) Subject: Add the least grammar to be able to do something X-Git-Url: https://git.ljiriste.work/?a=commitdiff_plain;h=098e491b731cdca46fb2bc7f12196784958ff0b1;p=SetSCAD.git Add the least grammar to be able to do something The grammar before defined the set definition, but not the actual file grammar. This adds concepts such as statement so a file can be written. --- diff --git a/grammar b/grammar index 3125a71..b395a89 100644 --- a/grammar +++ b/grammar @@ -1,3 +1,13 @@ +file -> statement SEMICOLON file +file -> '' +statement -> function_load +statement -> const_definition +statement -> set_construction +statement -> set_named_definition +function_load -> LOAD function_name FROM file_path +file_path -> path +const_definition -> const_name EQUAL expression +set_construction -> set set_named_definition -> set_name EQUAL set set_definition -> points_domain VERTICAL_BAR constraint_list points_domain -> single_points_domain COMMA points_domain @@ -31,7 +41,7 @@ term -> LEFT_BRACKET expression RIGHT_BRACKET function_call -> function_name LEFT_BRACKET argument_list RIGHT_BRACKET argument_list -> term COMMA argument_list argument_list -> term -set_definition -> parameters_domain SEMICOLON parameter_equations +set_definition -> parameters_domain VERTICAL_BAR parameter_equations parameters_domain -> parameter_name IN set COMMA parameters_domain parameters_domain -> parameter_name IN set parameter_equations -> parameter_equation COMMA parameter_equations @@ -57,7 +67,9 @@ vector -> LEFT_SQUARE number COMMA number COMMA number RIGHT_SQUARE parameter_name -> name function_name -> name set_name -> name +const_name -> name name -> STRING +path -> STRING number -> mantissa number -> mantissa exponent mantissa -> INT