FUNCTION acyclic
(* SCHEMA Ap242_managed_model_based_3d_engineering_mim_LF; *)
FUNCTION acyclic (arg1: generic_expression;
arg2: SET OF generic_expression): BOOLEAN;
LOCAL
result: BOOLEAN := TRUE;
END_LOCAL;
IF ('AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF.SIMPLE_GENERIC_EXPRESSION'
IN TYPEOF (arg1))
THEN
RETURN (TRUE);
END_IF;
IF arg1 IN arg2
THEN
RETURN (FALSE);
END_IF;
IF 'AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF.UNARY_GENERIC_EXPRESSION'
IN TYPEOF (arg1)
THEN
RETURN
(acyclic(arg1\unary_generic_expression.operand,arg2+[arg1]));
END_IF;
IF 'AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF.BINARY_GENERIC_EXPRESSION'
IN TYPEOF (arg1)
THEN
RETURN
(acyclic(arg1\binary_generic_expression.operands[1],arg2+[arg1])
AND
acyclic(arg1\binary_generic_expression.operands[2],arg2+[arg1]));
END_IF;
IF
'AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF.MULTIPLE_ARITY_GENERIC_EXPRESSION'
IN TYPEOF (arg1)
THEN
result := TRUE;
REPEAT i := 1 TO
SIZEOF (arg1\multiple_arity_generic_expression.operands);
result := result AND
acyclic(arg1\multiple_arity_generic_expression.operands[i], arg2+[arg1]);
END_REPEAT;
RETURN (result);
END_IF;
RETURN (result);
END_FUNCTION; -- acyclic
Referenced By
Defintion acyclic is references by the following definitions:
[Top Level Definitions] [Exit]Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:20:10-04:00