From 3046fb0d0c1ceac2c6a6ca9456e9e05671e0cef9 Mon Sep 17 00:00:00 2001 From: Chimrod <> Date: Sat, 19 Jul 2025 11:18:24 +0200 Subject: Added dependencies system between the modules in the checks --- lib/qparser/analyzer.ml | 4 ++-- lib/qparser/analyzer.mli | 2 +- lib/qparser/parser.mly | 2 +- lib/qparser/qsp_expression.mly | 14 +++++++------- 4 files changed, 11 insertions(+), 11 deletions(-) (limited to 'lib/qparser') diff --git a/lib/qparser/analyzer.ml b/lib/qparser/analyzer.ml index b4eeba0..fc0ed6d 100644 --- a/lib/qparser/analyzer.ml +++ b/lib/qparser/analyzer.ml @@ -14,14 +14,14 @@ let get_lexer : See [syntax/S] *) let rec parse : type a context. - (module Qsp_syntax.S.Analyzer + (module Qsp_syntax.Analyzer.T with type Location.t = a and type context = context) -> lexer -> Lexbuf.t -> context -> (a result, Qsp_syntax.Report.t) Result.t = - fun (module S : Qsp_syntax.S.Analyzer + fun (module S : Qsp_syntax.Analyzer.T with type Location.t = a and type context = context) -> let module Parser = Parser.Make (S) in diff --git a/lib/qparser/analyzer.mli b/lib/qparser/analyzer.mli index 817be6c..6e2f752 100644 --- a/lib/qparser/analyzer.mli +++ b/lib/qparser/analyzer.mli @@ -2,7 +2,7 @@ type 'a result = { content : 'a; report : Qsp_syntax.Report.t list } type lexer = Location | Dynamic val parse : - (module Qsp_syntax.S.Analyzer + (module Qsp_syntax.Analyzer.T with type Location.t = 'a and type context = 'context) -> lexer -> diff --git a/lib/qparser/parser.mly b/lib/qparser/parser.mly index 2fadccf..1caf962 100644 --- a/lib/qparser/parser.mly +++ b/lib/qparser/parser.mly @@ -17,7 +17,7 @@ module Helper = Qsp_syntax.S.Helper(Analyzer.Expression) %} -%parameter +%parameter %start <(Analyzer.context -> Analyzer.Location.t)>main %start<(Analyzer.context -> Analyzer.Location.t)>dynamics diff --git a/lib/qparser/qsp_expression.mly b/lib/qparser/qsp_expression.mly index c6b7564..f037051 100644 --- a/lib/qparser/qsp_expression.mly +++ b/lib/qparser/qsp_expression.mly @@ -27,26 +27,26 @@ { ex } | op = unary_operator expr = expression - { Analyzer.Expression.uoperator $loc op expr } + { Analyzer.Expression.uoperator ~ctx:{f=(fun _ -> None)} $loc op expr } %prec NO | expr1 = expression op = binary_operator expr2 = expression - { Analyzer.Expression.boperator $loc op expr1 expr2 } + { Analyzer.Expression.boperator ~ctx:{f=(fun _ -> None)} $loc op expr1 expr2 } | v = delimited(TEXT_MARKER, literal*, TEXT_MARKER) - { Analyzer.Expression.literal $loc v } - | i = INTEGER { Analyzer.Expression.integer $loc i } - | v = variable { Analyzer.Expression.ident v } + { Analyzer.Expression.literal ~ctx:{f=(fun _ -> None)} $loc v } + | i = INTEGER { Analyzer.Expression.integer ~ctx:{f=(fun _ -> None)} $loc i } + | v = variable { Analyzer.Expression.ident ~ctx:{f=(fun _ -> None)} v } %prec p_variable | k = FUNCTION arg = argument(expression) { - (Analyzer.Expression.function_ $loc k arg) + (Analyzer.Expression.function_ ~ctx:{f=(fun _ -> None)} $loc k arg) } | k = FUNCTION_NOARGS { - (Analyzer.Expression.function_ $loc k []) + (Analyzer.Expression.function_ ~ctx:{f=(fun _ -> None)} $loc k []) } literal: | v = LITERAL { Qsp_syntax.T.Text v } -- cgit v1.2.3