From b6fd97e0154cd867b6fbc4b98f896302acc7bd5e Mon Sep 17 00:00:00 2001 From: Tomas Capretto Date: Sat, 20 Jul 2024 11:08:35 -0300 Subject: [PATCH] Make sure model_description always returns a Model instance --- formulae/model_description.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/formulae/model_description.py b/formulae/model_description.py index afd0835..bf739bf 100644 --- a/formulae/model_description.py +++ b/formulae/model_description.py @@ -1,6 +1,8 @@ -from .scanner import Scanner -from .parser import Parser -from .resolver import Resolver +from formulae.terms.terms import Model + +from formulae.scanner import Scanner +from formulae.parser import Parser +from formulae.resolver import Resolver def model_description(formula): @@ -19,4 +21,10 @@ def model_description(formula): ---------- An object of class ModelTerms with an internal description of the model. """ - return Resolver(Parser(Scanner(formula).scan()).parse()).resolve() + + description = Resolver(Parser(Scanner(formula).scan()).parse()).resolve() + + if isinstance(description, Model): + return description + + return Model(description)