|
@@ -173,9 +173,9 @@ String function conformance_scd(model : Element):
|
|
|
constraint_function = read_attribute(model["metamodel"], reverseKeyLookup(model["metamodel"]["model"], dict_read_node(model["type_mapping"], element)), "constraint")
|
|
|
if (element_neq(constraint_function, read_root())):
|
|
|
String result
|
|
|
- // TODO define the local_constraint execution function
|
|
|
- log("Exec constraint!")
|
|
|
- result = execute_local_constraint(model, model_name)
|
|
|
+ log("Calling constraint function!")
|
|
|
+ result = constraint_function(model, model_name)
|
|
|
+ log("Done: result " + result)
|
|
|
if (result != "OK"):
|
|
|
return result
|
|
|
|
|
@@ -236,22 +236,3 @@ Element function generate_bottom_type_mapping(model : Element):
|
|
|
dict_add(tm, elem, mm["Node"])
|
|
|
|
|
|
return model
|
|
|
-
|
|
|
-String function execute_local_constraint(model : Element, element : String):
|
|
|
- Element action
|
|
|
- Element params
|
|
|
- Element param
|
|
|
- Element second_param
|
|
|
-
|
|
|
- action = read_attribute(model, element, "constraint")
|
|
|
- params = create_node()
|
|
|
- param = create_node()
|
|
|
- dict_add(param, "name", "a")
|
|
|
- dict_add(param, "value", model)
|
|
|
- second_param = create_node()
|
|
|
- dict_add(second_param, "name", "b")
|
|
|
- dict_add(second_param, "value", element)
|
|
|
- dict_add(param, "next_param", second_param)
|
|
|
- dict_add(params, "params", param)
|
|
|
- dict_add(params, "last_param", second_param)
|
|
|
- return eval(action, params)
|